2012-03-10 82 views
7

如何使用jQuery正確啓用/禁用輸入字段?如何使用jQuery禁用/啓用輸入字段

我與實驗:

$("#FullName").removeAttr('disabled'); 

從這個輸入字段刪除disabled="disabled"

<input id="FullName" style="width: 299px" value="Marko" disabled="disabled" /> 

但如何與點擊再次添加另一個按鈕,或者如何在點擊禁用輸入字段?

+0

http://stackoverflow.com/questions/1414365/how-to-disable-an-input-with- jquery在這裏檢查 – jeremysawesome 2012-03-10 20:25:29

回答

18

jQuery的版本1.6+使用prop

$('#elementId').click(function(){ 
     $('#FullName').prop('disabled', true\false); 
}); 

對於舊版本的jQuery使用attr

$('#elementId').click(function(){ 
     $('#FullName').attr('disabled', 'disabled'\''); 
}); 
5
$("#FullName").prop('disabled', true); 

會做。

但是請注意,在禁用它之後(通過上面的代碼)onclick處理程序將無法正常工作。要再次啓用它,請在另一個按鈕或字段的onclick處理程序中添加$("#FullName").removeAttr('disabled');

+0

作品,非常感謝! – Drazek 2012-03-10 20:28:47

+0

謝謝你使第二部分清楚。我無法弄清楚爲什麼在文本輸入被禁用時點擊事件沒有被觸發。 – decapo 2017-02-14 14:05:33

1

這應該做到這一點。

$("#FullName").attr('disabled', 'disabled'); 

Shiplu是正確的,但使用這個如果你還沒有使用jQuery 1.6 +

1
$("#anOtherButton").click(function(){ 
    $("#FullName").attr('disabled', 'disabled'); 
}); 

+0

你忘了第一個選擇器'#''('anOherButton「)......'它有錯字。 – gdoron 2012-03-10 20:32:19

+0

@gdoron:謝謝,編輯 – sll 2012-03-11 07:51:47

4
$('#checkbox-id').click(function() 
{ 
    //If checkbox is checked then disable or enable input 
    if ($(this).is(':checked')) 
    { 
     $("#to-enable-input").removeAttr("disabled"); 
     $("#to-disable-input").attr("disabled","disabled"); 
    } 
    //If checkbox is unchecked then disable or enable input 
    else 
    { 
     $("#to-enable-input").removeAttr("disabled"); 
     $("#to-disable-input").attr("disabled","disabled"); 
    } 
}); 
2

另一種簡單的方法的設置的一個或多個屬性,以啓用/禁用輸入費爾德

$("#anOtherButton").click(function() { 
 
    $("#FullName").attr('disabled', !$("#FullName").attr('disabled')); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> 
 

 
<input id="FullName" style="width: 299px" value="Marko" disabled="disabled" /> 
 
<br> 
 
<br> 
 
<input type="button" id="anOtherButton" value="disable/enable" />

0

要切換殘疾人之間的領域並啓用,試試這個:

$('#toggle_button').click(function() { 
    $('#FullName').prop("disabled", 

    function (i, val) { 
     return !val; 
    }); 
})