我可以知道如何使用jquery来锁定所有<input type="submit/button" ..
并且仅在页面完全呈现时才允许提交吗?
答案 0 :(得分:11)
由于用例,我可能采用不同的方法。而不是实际禁用按钮,我只是不允许提交操作工作,直到页面加载。这不需要对现有HTML进行任何更改,并且当禁用JS时,您的页面将不会变得无用:
<script>
// Keep all submit buttons from working by returning false from onclick handlers
$('input:submit').live('click', function () {
return false;
});
// After everything loads, remove the the "live" restriction via "die"
$(window).load(function(){
$('input:submit').die();
});
</script>
更新:如果您希望此解决方案正常运行,请忘记提及将此script
标记加载到<head>
中的jQuery库。 (感谢您提醒我Mike Sherov )。
答案 1 :(得分:5)
默认情况下,您的提交按钮将disabled属性设置为true:
<input type="submit" disabled="disabled" />
然后,一旦页面加载,您就可以:
$('input').removeAttr('disabled');
答案 2 :(得分:2)
<强>的jQuery 强>
$(document).ready(function(){
$(":button,:submit").removeAttr("disabled");
});
<强> HTML 强>
<input type="button" id="button1" value="Button 1" disabled="disabled">
<input type="button" id="button2" value="Button 2" disabled="disabled">
<input type="button" id="button3" value="Button 3" disabled="disabled">
<input type="submit" id="submit" value="Submit" disabled="disabled">
答案 3 :(得分:1)
<input id="form-submit" type="submit" disabled="disabled" value="Submit" />
$(document).ready(function() {
$("#form-submit").removeAttr('disabled');
});
答案 4 :(得分:0)
你不能做像
这样的事吗window.onsubmit=function(){return false;}
window.onload=function(){window.onsubmit='';}
我不确定事件冒泡如何与onsubmit一起使用。我得测试一下。另外,我不知道jquery所以我不确定如何整合它。