我的标记
<form action="blah/foo" method="POST" id="frm1">
<input type="hidden" id="v" />
</form>
......
......
<!--after some code-->
<button id="btn1">test</button>
<input type="text" id="somevalue" />
我的目的是当我点击按钮btn1时,抓取somevalue
的值并将其赋予隐藏值v
并提交表单,表单需要提交(仅一次)所以我使用了 jquery one
方法,效果很好
第二件事是如果somevalue
为空我不想提交
问题场景
<script>
$('#btn1').one('click',function(){
if(!$('#somevalue').val()){
$('p#msg').html('Empty value');
return false;
}
$('#frm1').submit();
});
</script>
如果用户首先进行空输入并尝试提交错误消息,则会显示错误消息..但之后即使输入有效,点击事件也不会触发(我知道这是因为 one
函数)
我正在寻找表单仅提交一次的替代方案
最佳答案
var form_sent = false;
$('#btn1').click(function(){
if(form_sent == true){ return; }
if(!$('#somevalue').val()){
$('p#msg').html('Empty value');
return false;
}
form_sent = true;
$('#frm1').submit();
});
关于javascript - Jquery一题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11359654/