Jquery 禁用在单击上工作的按钮

Jquery 禁用在单击上工作的按钮,jquery,Jquery,按钮显示为禁用,但当我单击该按钮时,它的doign操作是什么 这是我做错了什么吗 谢谢我认为不能在唯一的元素上运行.each()函数。它是唯一的,因为您使用的是#id选择器 您只需执行以下操作: $(document).ready(function() { $("#FieldsetID").each(function() { $('.Isubmit').attr('disabled', 'disabled'); }); });

按钮显示为禁用,但当我单击该按钮时,它的doign操作是什么

这是我做错了什么吗


谢谢

我认为不能在唯一的元素上运行.each()函数。它是唯一的,因为您使用的是#id选择器

您只需执行以下操作:

$(document).ready(function() {
     $("#FieldsetID").each(function() {
                 $('.Isubmit').attr('disabled', 'disabled');
            });
});

现在按钮不应该是可点击的。

尽管未经测试,但我认为当您按id选择元素时,不需要使用每个元素,因为它返回一个元素,当您选择使用类时,您必须使用每个元素,请尝试在禁用选择器时使用每个元素,然后查看。

出于某种原因,当您单击禁用的提交按钮时,IE不会阻止事件冒泡

我假设您在一个祖先上有其他事件处理程序,因此被触发

在该祖先的事件处理程序中,似乎需要测试
submit
按钮是否被单击,以及是否被禁用。如果是这样,您将
返回false
以防止代码运行或发生提交,或其他任何情况

$(document).ready(function() {
     $('#FieldsetID .Isubmit').attr('disabled', 'disabled');
});

尝试此选项以启用它。再次

       // Not sure if this is the right event, but you get the idea
$( someSelector ).click(function( event ) {
    var $target  = $(event.target);
                  // check to see if the submit was clicked
                  //    and if it is disabled, and if so,
                  //    return false
    if( $target.is(':submit:disabled') ) {
        return false;
    }
});

一个最简单的方法是找到单击按钮是否禁用了类,如果它返回false,例如:

$(document).ready(function(){
    $("input[type=submit]").attr("disabled", "disabled");

    if ( $('#nome').is(":empty") ) {
        alert ("verdadeiro");
    }
    else {
        alert ("entrou no if");
        $("input[type=submit]").removeAttr("disabled");
    }

});

你有一些事件绑定到代码中其他地方的按钮吗?他说按钮已经显示为禁用,所以我认为这不是问题所在。另外,虽然您不应该在id选择器上运行每一个,但没有任何东西表明您不能运行,因此他的代码应该仍然可以运行,尽管效率很低。@Mark-+1 nothing(最佳实践除外)可以防止用户在一个项目数组上循环。
 $('.button1').click(function () {
 if ($(this).hasClass('disabled')) {
     return false;
 } else {
     //do whatever you want when element is clicked
 }

});