views:

3070

answers:

3

I can't seem to get removeAttr to work, I'm using the example I saw on the jQ site. Basically onclick I add the attribute to disable a field (which works just fine) but when the user clicks again it should enable the field in question. I used alerts to make sure the else block is being fired, so I know that's not it.

Code:

$('#WindowOpen').click(function (event) {
  event.preventDefault();

  $('#forgot_pw').slideToggle(600);

  if('#forgot_pw')
  {

   $('#login_uname, #login_pass').attr('disabled','disabled');
  }

  else
  {

   $('#login_uname, #login_pass').removeAttr('disabled');
  }

});

Thanks.

+3  A: 

Your problem is that the following line of code will always evaluate to true.

if('#forgot_pw')

try replacing with

if($('#forgot_pw').attr('disabled'))
Blake Taylor
Same problem, I get it to disable but not re-enable.
Tarek
A: 

All good used this:

$('#WindowOpen').toggle( function() { $('#login_uname, #login_pass').attr("disabled","disabled"); }, function() { $('#login_uname, #login_pass').removeAttr("disabled"); });

Tarek
+1  A: 
$('#forgot_pw').attr('disabled', false);

should work for you.

Dmitry Polushkin