Php 防止Ajax创建表单的默认设置
我从一个名为Php 防止Ajax创建表单的默认设置,php,jquery,ajax,live,form-submit,Php,Jquery,Ajax,Live,Form Submit,我从一个名为test.php的文件中点击获取表单,该文件包含以下内容: <form method="post" class="adminTM"> <input type="hidden" name="execID" value="<?=$_POST['exec']?>" /> <input type="hidden" name="fromTM" value="<?=$_POST['TM']?>" /> <i
test.php
的文件中点击获取表单,该文件包含以下内容:
<form method="post" class="adminTM">
<input type="hidden" name="execID" value="<?=$_POST['exec']?>" />
<input type="hidden" name="fromTM" value="<?=$_POST['TM']?>" />
<input type="text" name="toTM" value="<?=$_POST['TM']?>" />
<input type="hidden" name="symbol" value="<?=$_POST['symbol']?>" />
<button class="submitTM">SUBMIT</button>
</form>
如何使表单在单击提交按钮时不执行默认提交操作
这里有一个小提琴,它基本上演示了我正在做的事情(由于JSFIDLE的工作方式,我不得不对它做一些更改):您应该在表单上使用
submit()
事件,而不是在提交上使用click()
,因为按enter键仍然会提交表单(绕过提交按钮)
这将正确防止表单执行默认提交:
$('.adminTM').live('submit', function(e) {
// execute custom code
console.log("submit event fired");
// prevent default submit
return false;
});
jsFiddle:抱歉,现在很晚了。我很好奇使用
.submit()
到底有什么失败的地方,不过,我过去使用过它,没有任何问题。这似乎在这里工作得很好,你能测试一下这把小提琴吗:奇怪的是,我以前试过,但它不工作,现在它工作得很好。非常感谢。你能把那个提琴添加到你的原始答案中作为更新吗?可以,我也会编辑代码,这样它就可以使用.live('submit')
,很高兴我能帮上忙。为未来的用户添加提琴。
$('.adminTM').live('submit', function(e) {
// execute custom code
console.log("submit event fired");
// prevent default submit
return false;
});