我需要禁用一个按钮,一旦它被点击,所以用户不能点击它不止一次。(我的应用程序是用MVC ASP.NET编写的,我是在一个普通的ASP.NET应用程序中这样做的。)
我试过使用JavaScript和jQuery,但它不起作用。该按钮被禁用,但没有提交表单。
jQuery:
$("#ClickMe").attr("disabled", "disabled"); JavaScript:
function DisableNextButton(btnId) {
document.getElementById(btnId).disabled = 'true';
}这两种方法都很有效,但现在表单不提交了。
发布于 2015-09-09 06:01:01
jQuery现在有了.one()函数,它将任何给定的事件(如“提交”)限制为一次发生。
示例:
$('#myForm').one('submit', function() {
$(this).find('input[type="submit"]').attr('disabled','disabled');
});此代码将允许您提交一次表单,然后禁用该按钮。将find()函数中的选择器更改为您希望禁用的任意按钮。
注意:我已经将选择器更改为表单,并将事件类型更改为提交。这允许您在提交时仍然禁用按钮时,可以从任何地方(按钮以外的位置)提交表单。
注释2:每个gorelog的,使用attr('disabled','disabled')将阻止表单发送提交按钮的值。如果要传递按钮值,请改用attr('onclick','this.style.opacity = "0.6"; return false;')。
发布于 2015-09-09 06:10:08
var button = $('<button>Click Me</button>');
button.clicked = false;
$('body').append(button);
button.click(function(){
if(button.clicked) return;
button.clicked = true;
button.prop('disabled', true);
});<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
https://stackoverflow.com/questions/32471911
复制相似问题