簡體   English   中英

根據javascript和asp.net中選中的復選框禁用/啟用HtmlSelect

[英]Disable/Enable HtmlSelect based on checkbox checked in javascript and asp.net

這是情況。 我有一個htmlselect控件,該控件在加載時需要根據數據庫查詢中的正確與否進行初始啟用或禁用。 然后,我需要用戶能夠單擊復選框以禁用或啟用相同的htmlselect控件,而所有控件都無需回發。

這可能嗎?

應該是這樣的:

 <input type="checkbox" onclick="document.getElementById('idOfSelect').disabled=(this.checked)?false:true">

您將必須在運行時動態生成HTML,方法是從服務器代碼生成HTML或使用模板。 使用上面建議的代碼Dr.Molle,並根據數據庫查詢的結果為SELECT的復選框/禁用樣式插入enabled屬性:

<INPUT type-"checkbox" checked ...>
<SELECT ...>

如果應該啟用它或

<INPUT type-"checkbox" ...>
<SELECT disabled ...>

如果不是這樣。

不幸的是,除非使用非常復雜的Web框架,否則您將無法結合HTML生成來設置初始狀態和基於用戶交互的動態更改。

使用通用的模板約定將所有內容放在一起,您的HTML模板可能如下所示:

<INPUT type="checkbox" ${mySelectIsInitallyEnabled ? "checked" : ""} onclick="document.getElementById('mySelect').disabled=(this.checked)?false:true">
<SELECT id="mySelect" ${mySelectIsInitallyEnabled ? "" : "disabled"}>

    <!-- options ... -->

</SELECT>

使用javascript和后台代碼,我能夠使它正常工作。 謝謝你們

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM