以下代碼設置一個元素的選定屬性,並在複選框選中值更改時切換該元素。如何使用ASP.NET複選框和JavaScript切換屬性?
ASP.NET
<asp:CheckBox CssClass="Cb" RunAt="Server"/>
<asp:TextBox CssClass="Txt" RunAt="Server" ReadOnly="True"/>
HTML
<input class="Cb" type="checkbox"/>
<input class="Txt" type="text" readonly="true"/>
JQUERY
$(".Cb").change(function() {
$(".Txt").prop("readonly",!this.checked);
});
[實施例
的一個問題
當這個代碼與ASP.NET ASP執行:複選框的結果是不一樣的,當代碼與執行如一個輸入:複選框。
隨着輸入:複選框只讀狀態切換爲:
INITIAL STATE
<input class="Txt" type="text" readonly="true"/>
TOGGLE
<input class="Txt" type="text"/>
<input class="Txt" type="text" readonly=""/>
與ASP:複選框只讀狀態切換爲:
初始狀態時
<input class="Txt" type="text" readonly="readonly"/>
撥動
<input class="Txt" type="text" readonly=""/>
<input class="Txt" type="text" readonly=""/>
諒解READONLY
以下都是性的判定是有效的只讀被設置爲true。
- 只讀
- 只讀= 「」
- 只讀= 「真」
- 只讀= 「只讀」
我的問題
如何去除然後切換隻讀當使用asp.net與jQuery/JavaScript的財產?
編輯
問題是類是使用一個asp當施加到不正確的元素:複選框。
THIS
<asp:CheckBox CssClass="Cb" RunAt="Server"/>
呈現在瀏覽器作爲
<span class="Cb"><input id="ctl01" type="checkbox" name="ctl01" /></span>
的解
目標在asp:複選框使用ID和未類。
<asp:CheckBox ID="CBID" CssClass="Cb" RunAt="Server"/>
$("#<%= CBID.ClientID %>").change(function() {
$(".Txt").prop("readonly", this.checked ? "" : "readonly");
});
感謝您的快速反應射手。您的代碼是正確的,但在應用於asp:複選框時再次無效。 – Obsidian
這裏一定有些不一樣的地方,因爲我剛剛做了一個ASP.Net複選框,它*做*工作。當頁面呈現時,它仍然只是一個複選框。是什麼讓你說它不起作用 - 究竟是哪裏出了問題? – Archer
您已將類「Cb」添加到複選框的包含範圍,而不是複選框本身。把它放在複選框上,它應該可以解決你的問題:) – Archer