2014-10-22 66 views
0

试图制作一个简单的切换按钮。用jquery切换属性

来解释它:

输入具有印刷机按钮下禁用

用户的属性为假

用户按下保存更改和按钮再次变为禁用。

这里是我的代码

$('#password').click(function(){ 
    if($("#password") === "disabled"){ 
     $("#password").prop("disabled", false); 
    } else if ($("#password").prop("disabled", false)){ 
     $("#password").prop("disabled", true); 
    } 
}); 

旁注:我使用的是引导

+0

一个可能的例子可以是:' ' – Litestone 2014-10-22 11:22:42

回答

0
  • 残疾人表单元素不触发任何鼠标事件,事件处理函数将永远不会被调用。即使它是..
  • jQuery集合($("#password"))将永远不会等于字符串字面值"disabled",虽然它是一个真值,但您已使用===。无论如何,我敢肯定你正在寻找

    if($('#password').prop('disabled')) { 
    
  • .prop()的二传手版本返回原始的集合,因此将永远是一个truthy值。

要在默认情况下启用了<input>并将其禁用当你的表单提交(假设你使用的一种形式。):

$('#myForm').submit(function(){ 
    $('#password').prop('disabled', true); 
}); 
1
Try like; 

$('#password').click(function(){ 
    if($(this).is(':disabled')){ 
     $(this).removeAttr('disabled'); 
    } 
    else { 
     $(this).attr('disabled','disabled'); 
    } 
}); 
0

尝试等;

> $('#password').click(function(){ 
>  if($(this).is(':disabled')){ 
>   $(this).removeAttr('disabled'); 
>  } 
>  else { 
>   $(this).attr('disabled','disabled'); 
>  } }); 
0

所以这就是我如何解决它的任何未来的参考。

这是当按钮的id = “#密码键” 和输入的ID = “密码”

 $(function() { 
      $('#password-button').click(function() { 
       if ($("#password").prop("disabled")) { 
        $("#password").prop("disabled", false); 
       } else { 
        $("#password").prop("disabled", true); 
       } 
      }); 
     });