Javascript 表单未使用onclick事件提交
我试图在图像单击事件上提交表单,但我得到Javascript 表单未使用onclick事件提交,javascript,jquery,html,Javascript,Jquery,Html,我试图在图像单击事件上提交表单,但我得到未捕获类型错误:对象#没有方法“提交”单击事件触发后出现此错误 我的代码: <form name="searchRef" id="searchRef" method="get" action="#"> <input type="text" name="s" id="ref" value="" class="ref_search" /> <input type="submit" name="submit" id="ref
未捕获类型错误:对象#没有方法“提交”
单击事件触发后出现此错误
我的代码:
<form name="searchRef" id="searchRef" method="get" action="#">
<input type="text" name="s" id="ref" value="" class="ref_search" />
<input type="submit" name="submit" id="ref_submit" value="GO" class="ref_submit" />
</span> <span> <img src="http://www.webdeveloper.com/forum/image.php?s=2c556ca62e6fd2a2e4d6ca925fb3fda1&u=8331&dateline=1057444055" alt="Go" onClick="document.getElementById('searchRef').submit();"> </span>
</form>
有什么想法或建议吗?谢谢。您必须删除/更改提交按钮的属性名称,例如:
name="btnSubmit"
否则,表单元素的submit()方法将被覆盖。您必须删除/更改submit按钮的属性名称,例如:
name="btnSubmit"
否则,表单元素的submit()方法将被覆盖。将提交按钮名称从
submit
更改为ref\u submit
如下图所示
<input type="submit" name="ref_submit" id="ref_submit" value="GO" class="ref_submit" />
将提交按钮名称从
submit
更改为ref\u submit
如下图所示
<input type="submit" name="ref_submit" id="ref_submit" value="GO" class="ref_submit" />
这只是一个想法,但请尝试使用
document.forms["searchRef"].submit();
而不是
document.getElementById('searchRef').submit();
这只是一个想法,但请尝试使用
document.forms["searchRef"].submit();
而不是
document.getElementById('searchRef').submit();
您的页面中可能已经有一个带有
id=searchRef
的html元素,因此getElementById()
获取了错误的元素
更好的解决方案是将提交按钮替换为输入类型=图像:
<input type="image" name="ref_submit" id="ref_submit" value="GO" class="ref_submit"
src="path/to/your/image" />
请注意,这将导致服务器端出现一个带有
$\u POST['submit\u x']
和$\u POST['submit\u y']
的POST请求(对应于图像左上角的(x,y)鼠标坐标)页面中可能已经有一个带有id=searchRef
的html元素,因此getElementById()
选错了
更好的解决方案是将提交按钮替换为输入类型=图像:
<input type="image" name="ref_submit" id="ref_submit" value="GO" class="ref_submit"
src="path/to/your/image" />
请注意,这将导致服务器端出现一个POST请求,其中包含
$\u POST['submit\u x']
和$\u POST['submit\u y']
(对应于图像左上角的(x,y)鼠标坐标)请更改表单标记动作属性,用目标页面名称say action.php重新拼贴
,并在表单标记中添加onsubmit=“javascript:return false”
请更改表单标记的action属性,用目标页面名say action.php
,并添加onsubmit=“javascript:return false”
在表单标记中发生此错误的原因是您的名称
属性为提交
,请尝试更改名称属性或尝试在代码下面执行操作
<img src="http://www.webdeveloper.com/forum/image.php?s=2c556ca62e6fd2a2e4d6ca925fb3fda1&u=8331&dateline=1057444055" alt="Go" onclick='window.searchRef.submit();' />
发生此错误的原因是您的名称
属性为提交
,请尝试更改名称属性或在代码下面尝试
<img src="http://www.webdeveloper.com/forum/image.php?s=2c556ca62e6fd2a2e4d6ca925fb3fda1&u=8331&dateline=1057444055" alt="Go" onclick='window.searchRef.submit();' />
submit仍将引用输入元素,不再使用submit()方法submit仍将引用输入元素,不再使用submit()方法name=“submit”
不应在表单元素中使用谢谢,我没有注意到这一点。这似乎是一个问题,只是因为使用了jquery,对吗?name=“submit”
不应该在表单元素中使用谢谢,我没有注意到这一点。这似乎是一个问题,只是因为使用了jquery,对吗?表单中是否有Id为submit
的输入字段?表单中是否有Id为submit
的输入字段?