2012-03-22 100 views
0

我有一個用戶控件,並在其中,一個DropDownList。我使用此代碼禁用分離器添加到項目列表:禁用ListItem在顯示在JQuery UI對話框中時啓用

ListItem separador1 = new ListItem(" -- -- -- -- -- ", "Separador"); 
separador1.Attributes.Add("disabled", "true"); 
this.ddlPais.Items.Add(separador1); 

時顯示在頁面的用戶控制,通常它的工作原理確定,但是當它位於一個jQuery用戶界面對話框分隔項目沒有啓用屬性,並且當它們被啓用時,它們就會被關閉。

重要提示:我設法解決我的問題,同時仍然在打字的問題,我無論如何都將它張貼以防有人經歷什麼,我認爲是一個jQuery的bug。

解決的辦法是在打開JQuery對話框後添加disabled屬性。

$("#" + PanelClientId).dialog("open"); 
$("#" + PanelClientId).parent().appendTo(jQuery("form:first"));  
$('option[value="Separador"]').attr('disabled','true'); //This is new in my code 
+0

您可以在下面的答案區域發佈解決方案並接受它嗎?否則,人們往往認爲這是沒有答案的。 – JohnP 2012-03-22 17:06:23

回答

0

我設法解決它的一種解決方法。解決方案是在每個pageLoad中添加disabled屬性;它必須是客戶端pageLoad,因爲我使用的是UpdatePanel,所以在每次異步回發之後禁用項目。

<script type="text/javascript"> 
    function pageLoad(sender, args) { 
     $('option[value="Separador"]').attr('disabled','true'); 
    } 
</script> 
0

如果你想在代碼中解決這個問題,只需使用:

separador.Attributes.Add("disabled", "disabled"); 

我認爲這個問題是當代碼被添加到通過jQuery的DOM,屬性不被識別爲有效。

+0

我試過你的解決方案,但結果是一樣的:該項目在JQuery對話框中呈現時啓用。 – daniloquio 2012-03-22 17:12:25