2016-04-23 101 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