2016-04-23 72 views
1

因此,我將a href設置爲簡單表單提交,但我想將其用作與表單提交相同類型的方法。如何使href充當提交表單

所以我把它設置的方法是:

<!-- HTML --> 
<a onclick="subForm('login');" style="cursor: pointer;"> login </a> 

// JavaScript 
function subForm(el) { 
    var elem = document.getElementById(el); 
    elem.submit(); 
} 

現在,當我點擊鏈接它充當如果我點擊提交表單上,我可以爲形式建立一個input type=hidden所以我可以看到它在PHP中,但..

我需要此登錄系統不是空的,並不想使用舊方法與if empty然後顯示處理後的錯誤,所以我想提交按鈕是能夠做相同的點擊提交表單時,其中一個輸入設置爲required他們的標記標籤..

回答

1

你的代碼應工作假設是

<a onclick="subForm('login');" style="cursor: pointor;"> login </a> 

是具有「登錄」的ID的形式內;

你可能想知道的一些事情是:cursor:pointor是錯誤的,它應該是cursor:pointer。但是,如果稍微更改代碼,則無論如何您都不需要內聯樣式。在我看來,這樣的事情會有很大的改善。我沒有測試它,但它應該可以工作:

<form id="login" action="/wherever/you/want/this/form/to/post/to" method="post"> 
    <a id="js-submit-form" href=""> login </a> 
</form> 

<script> 
    var formToSubmit = document.getDocumentById('login'), 
    button = document.getElementById('js-submit-form'), 
    submitForm = function(e) { 
     e.preventDefault(); // this will stop the browser trying to use the href value 
     formToSubmit.submit(); 
    }; 

    button.addEventListener("click",submitForm); 

</script> 

我剛剛讀過你的問題的其餘部分,但我實際上並不明白你在問什麼。你爲什麼不使用'required'標籤和一些服務器端驗證?

+0

對不起,我誤拼寫指針:P謝謝你給我看,剛剛添加該到我的代碼,看看它是否工作。 – Jek

+0

我想我只是做一些服務器端驗證,謝謝:) – Jek