Ksh*_*ain 7 html javascript jquery
我试图通过jquery提交表单.我希望在jquery提交表单时让我的表单提交事件被触发.
但是当表单成功提交时,提交事件处理程序未成功调用.
以下是代码:
<html>
<head>
<title>forms</title>
<script src="../common/jquery-1.6.2.min.js"></script>
<script>
$('#testform').submit(function() {
$.post($(this).attr("action"), $(this).serialize(), function(html) {
$("#menu").html('<object>'+html+'</object>');
});
return false; // prevent normal submit
});
</script>
</head>
<body>
<form id="testform" action="<%=getURL%>" method="post" >
<!-- <input type="hidden" value="DocQrySetup" name=form>
<input type="hidden" value="bdqdb1" name=config>-->
<input type="hidden" value="test" name=otherParams>
</form>
<script language=javascript>
$('#testform').submit();
</script>
<div id="menu" style="position:relative; bottom: 0; overflow:hidden;">
</div>
</body>
Run Code Online (Sandbox Code Playgroud)
我搜索了所有的论坛,但无法得到解决方案.
Dav*_*ber 22
运行第一个脚本时,表单不存在,因此您的事件处理程序无需附加任何内容.
需要将该处理程序移动到表单之后或将其包装
$(document).ready(function() {
$('#testform').submit(function() {
/* your code */
});
});
Run Code Online (Sandbox Code Playgroud)
附加事件侦听器时,未定义表单,在表单之后移动附加事件侦听器的代码或使用以下代码包装代码:
jQuery(document).ready(function ($) {
...
});
Run Code Online (Sandbox Code Playgroud)
并添加一个提交按钮.
...
<input type="submit" value="submit">
...
Run Code Online (Sandbox Code Playgroud)