好的伙计们,我有这个代码:
<a class="button" href="#"><span>SEND</span></a>
我如何在提交表单按钮中转换它?
我试过这个,但是不行......
<div class="contato_form" id="contato_form">
<form id="form1" name="form1" method="post" action="javascript:envia_contato();">
<p><label for="nome">Name:</label><input class="campo_contato" type="text" name="nome" id="nome" /></p>
<p><label for="email">Email:</label><input class="campo_contato" type="text" name="email" id="email" /></p>
</form>
<div class="clear">
<p><a class="botao" href="#" onclick="javascript:envia_contato();"><span>SUBMIT</span></a></p>
</div>
</br>
</div>
答案 0 :(得分:2)
你有几个问题。
您的表单操作 不应与提交按钮的 onclick 相同。表单操作应该是将接收您发送的数据的页面。因此,您必须放置一个不仅是HTML而且处理页面服务器端的页面(即PHP,ASP,ASP.NET,JSP等)。
您的javascript函数envia_contato
未在您共享的代码中定义,因此您必须在使用它之前在HTML中的某个位置(使用script
标记)定义它(如Bhanu建议的):
<script>
function envia_contato()
{
form1.submit();
}
</script>
<div class="contato_form" id="contato_form">
<form id="form1" name="form1" method="post" action="/echo/json/">
<p>
<label for="nome">Name:</label>
<input class="campo_contato" type="text" name="nome" id="nome" />
</p>
<p>
<label for="email">Email:</label>
<input class="campo_contato" type="text" name="email" id="email" />
</p>
</form>
<div class="clear">
<p><a class="botao" href="#" onclick="envia_contato(); return false;"><span>SUBMIT</span></a></p>
</div>
<br/>
</div>
或者你可以放弃envia_contato
函数并直接调用提交(就像JK那样):
<p><a class="botao" href="#" onclick="form1.submit(); return false;"><span>SUBMIT</span></a></p>
onclick结尾处的return false;
将避免在调用javascript后引发更多事件,因此如果您返回false,则不会执行redirección到#
(此类重定向不会非常重要,但这样做会完全符合您的需要,而且您不需要重定向。)
以下事情并不是真正的问题,因为大多数HTML解析器无论如何都会起作用(但你可能有兴趣知道这一点):
但是,当您附加javascript事件(例如onclick)时,您不需要javascript:
,当需要其他内容时,您需要它(例如href
中只需要一个链接而不是javascript,所以你使用前缀来定义javascript)。
您的 br 标记在/
之前有br
,而且应该只是<br>
或<br/>
。
答案 1 :(得分:0)
尝试使用:
<a class="botao" href="#" onclick="form1.submit()">
答案 2 :(得分:0)
您必须在锚标记onclick
事件
function envia_contato()
{
document.form1.submit();
}