2010-11-15 142 views

回答

0

使用JavaScript和代碼隱藏我能得到這個工作。謝謝大家

2

應該是這樣的:

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

這是一切都很好,一切,但控制需要禁用或自動啓用屏幕加載取決於來自數據庫查詢 – mattgcon 2010-11-15 07:42:05

+0

來自某個開關我認爲在asp.net應該是可以設置的有一個屬性「禁用」取決於你的條件。 – 2010-11-15 16:14:16

1

你必須在運行時,通過從服務器代碼生成,或使用模板,動態生成HTML。使用Dr.Molle上述建議的代碼,並插入基於從數據庫查詢結果的複選框/禁用風格的enabled屬性爲SELECT

<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>