jquery-submit并没有阻止表单的提交
jquery submit is not stopping the form from being submitted
我有以下html表单
<form action="/newPost" id="submit_new" method="get"><div class="iwill">
<div class="iwill-holder">
<div class="txt"></div><div class="f"><input class="text" id="quickpost" name="quickpost" type="text" value=""></div>
<div class="img regularProgress" alt="Processing..."><input alt="Continue" class="iwill-btn movable" id="continue_submit" src="<?=$config['http']?>images/btn-2-continue-gray.png" type="image"></div>
</div>
</div>
</form>
这是jquery函数:
$('#submit_new').submit(function() {
var error = 0;
var quickpost = $("#quickpost").val();
if( quickpost == '' ) {
$("#quickpost").effect("shake", { times:3 }, 50);
$('#quickpost').css("color","red");
$('#quickpost').css("border","red 1px solid");
error = 1;
}else{
$('#quickpost').css("border","gray 1px solid");
$('#quickpost').css("color","black");
error = 0;
}
if(errorCounter > 0){
return false;
}else{
$.ajax({
url: 'sendPost.php?quickpost='+quickpost,
success: function(data) {
$('#result').prepend(data).slideDown('slow', function() {});
}
});
}
return false;
});
从技术上讲,我试图使用ajax发布表单值,但无论我做什么,表单仍然会提交到操作页面。我甚至试图使所有路径都指向false
,但它不起作用
尝试阻止默认行为
$('#submit_new').click(function(e) {
e.preventDefault();
...
你也有一个打字错误
if(errorCounter > 0){
return false;
}else{
应该是:
if(error > 0){
return false;
}else{
$('#submit_new').submit(function(e) {
e.preventDefault();
//other stuff
});
在submit函数中需要一个preventDefault((。
我得到的版本仍然使用return false
来阻止表单提交http://jsfiddle.net/pKR6G/2/
注意:我已经评论掉了抖动效果的行,所以我不需要包括jQueryUI。
事件侦听器方法不关心从侦听器函数返回什么。您需要对传入的事件对象使用jquery preventdefault方法。
相关文章:
- Jquery提交表单而不刷新
- 如何在提交表单时将PHP变量传递到Javascript cookie中
- 每次提交表单时都会重新加载网页
- Razor中的自动提交表单
- 使用 JavaScript 自动提交表单
- 点击相同的按钮打开模型,然后提交表单
- 添加和删除隐藏字段数组中的值,而不提交表单
- 使用Ajax提交表单
- jQuery:使用“jQuery验证”后无法提交表单's远程验证
- 如何在不重新加载的情况下提交表单,并使用Node+Express将数据传递回同一页面
- 有登录表单时无法提交表单
- 带有select的jquery提交表单不起作用
- 如何防止回车键提交表单,但仍然允许回车工作
- 使用按钮和单选按钮提交表单,但始终使用相同的值
- 在提交表单之前确定重复值
- 如何创建动态ajax提交表单
- HTML提交表单,同时包含空字段检查和按钮隐藏
- 如何使用jQueryAjax使用动态html输入texbox提交表单
- 当触发下拉列表的onchange事件时,使用JavaScript提交表单
- 提交表单后,Watir文本框输入未持续(重置为以前的文本框输入)