簡單的情況,但我無法讓它工作。我有一個複選框和一個文本區域。我想要的是當用戶選中複選框時,它啓用文本區域,當用戶取消選中該框時,我希望文本區域被禁用。簡單的權利?我不知道我做錯了什麼......jQuery - 無法禁用文本區
HTML:
<!-- Checkbox -->
<input type="checkbox" name="placeInvoiceOnHold" id="id_placeInvoiceOnHold">
<!-- Textarea -->
<textarea id="id_invoiceHoldReason" rows="10" cols="40" name="invoiceHoldReason" class="text-field"></textarea>
的jQuery在頁面底部,在<script></script>
塊:
function check_holds() {
if ($("#id_placeInvoiceOnHold").is(":checked")) {
$("#id_invoiceHoldReason").attr('disabled',true);
}
else {
$("#id_invoiceHoldReason").removeAttr('disabled');
}
}
我曾嘗試加入一點點的代碼,看看我的.click
方法是否正在觸發並實際處理正確的元素,它是。類似這樣的:
function check_holds() {
if ($("#id_placeInvoiceOnHold").is(":checked")) {
$("#id_invoiceHoldReason").text("TESTING"); <!-- <<-- This line here as a a text -->
$("#id_invoiceHoldReason").attr('disabled',true);
}
else {
$("#id_invoiceHoldReason").removeAttr('disabled');
}
}
「TESTING」出現在文本區域,所以我知道我有正確的元素ID。但嚴重的是,爲什麼它不工作?!我看了一下Chrome控制檯,並沒有出現任何錯誤。
這是我用盡:
$("#id_invoiceHoldReason").prop('disabled','disabled');
$("#id_invoiceHoldReason").disabled = true;
無似乎工作。我錯過了什麼?
這個很好用。我的代碼中必須有其他東西,因爲它第一次不能工作。謝謝! – Garfonzo