只需点击两次即可提交
submit done only after two click
我需要在提交前检查值
所以我尝试了两种方法,但问题相同
问题是用户需要在检查为true后再次单击
我尝试过chrome、firefox和IE,但总是出现同样的问题
此处为index.php
<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
submitnow=false;
$(document).ready(function(){
$("form#test").submit(function(e){
//e.preventDefault(); //i test this way (here and line 17) with same problem line
if(submitnow==false){
num=$("#num").val();
$.post("check.php",{num:num},function(result){
if(result=="true"){
alert("check return true");
submitnow=true;
$("form#test").submit();
//$("form#test").unbind('submit').submit();
}else{
alert("check return false");
}
});
}
if(!submitnow)
return false;
else
alert("submitnow is true");
});
});
</script>
<body>
<form action="" method="POST" id="test" >
<label for="num" >Num</label>
<input id="num" name="num" type="text" value="1" required/>
</br>
<input id="submit" type="submit" name="submit"/>
</form>
<?php
echo (isset($_POST['submit']))?'submit done':'';
?>
</body>
</html>
在这里检查.php
<?php
echo ($_POST['num']==1)?'true':'false';
?>
尝试
$(document).ready(function () {
$("form#test").submit(function (e) {
e.preventDefault();
var frm = this;
var num = $("#num").val();
$.post("check.php", {
num: num
}, function (result) {
if (result == "true") {
alert("check return true");
submitnow = true;
//don't do this as it will call the submit handler again
//$("form#test").submit();
frm.submit();
} else {
alert("check return false");
}
});
}
});
});
然后更改submit
按钮的id和名称
<input id="mysubmit" type="submit" name="mysubmit"/>
$("form#test").submit(function(e){
//e.preventDefault(); //i test this way (here and line 17) with same problem line
if(submitnow==false){
num=$("#num").val();
var formname = $this;
$.post("check.php",{num:num},function(result){
if(result=="true"){
alert("check return true");
submitnow=true;
formname.submit();
//$("form#test").unbind('submit').submit();
}else{
alert("check return false");
}
});
这对你有用。当你提交内置表格时,有两种类型。
相关文章:
- HTML/JS表单已提交两次
- Ruby On Rails Ajax 提交提交两次
- 联系表格提交两次
- Ajax Post-Submit函数提交两次
- 使用Foundation Abide提交两次表格
- MVC3 AJAX将数据传递给控制器.它's已提交两次
- 表单提交了两次(ajax和jquery)
- jQuery表单验证器:需要提交两次
- ajax表单在第二次提交时提交了两次,在第三次提交时又提交了三次,等等
- Ajax表单提交两次
- 文件上传文档.ready .on('submit') 提交了两次
- 单击两次提交按钮以发布表单
- Nodegit-获取两次提交之间的差异
- extjs4:如何两次提交相同的表单数据
- 我必须使用jquery框架在IE中按下两次提交按钮才能提交表单
- 关于AJAX,需要点击两次提交按钮
- 点击按钮两次提交表格
- 我需要点击两次提交我的表单与ajax
- ng-重复直到点击两次提交按钮后才起作用
- $.post()有时需要两次提交才能发送数据