2010-05-05 17 views
1

隨着asp.net控件下拉列表,有一個屬性AutoPostBack,如果它設置爲「真」,整個頁面將被回發。如何在選擇更改時啓用html選擇回發apsx頁面?

如果aspx頁面包括HTML元素「選擇」,如:

<select id="list" name="list" runat="server" 
    DataTextField="Name" DataValueField="ID" ></select> 

,它的數據是通過代碼隱藏填補。

問題是:如何讓這個Select有AutoPostBack功能呢?

+0

出於好奇,爲什麼你不想使用DropDownList .NET控件? – 2010-05-06 11:58:38

+0

不能說OP,但我可以給你幾個一般的原因。 ASPX控件是專有的(意思是它們是一個獨立的概念,可以自己學習)並屏蔽呈現的HTML。在某些情況下,它們呈現asinine樣式(特別是內聯)或難以添加語義屬性。所以,來自HTML設計或HTML5但不得不在WebForms項目上工作的人可能更願意避開ASPX專有控件。 – 2013-12-16 00:44:20

回答

0

DropDownList方法添加__doPostBack('selectelementname','commandname');致電onchange事件。當您更改該值時,將繼續回發到服務器,然後ASP.NET控件將在LoadPostData方法中處理回發數據。

HTH。

+1

好的,謝謝。我的確如此:。 然後得到錯誤說:「對象期望...」 – KentZhou 2010-05-05 18:35:08

+0

呵呵,有趣的... HtmlSelect控件確實支持加載發佈的數據到服務器......運行應用程序並右鍵單擊瀏覽器,選擇查看源代碼,然後查找HTML元素定義。確保ID和名稱屬性實際上是dd;如果它正在使用ct100 $ body $ dd這樣的名稱進行操作,則必須使用該值。 – 2010-05-06 11:57:11

0

您不能爲html選擇控件應用自動回發屬性。要調用c#代碼頁(serverside)內部的函數,您需要使用webservice。您可以在html選擇控件的'onchange'事件上調用javascript函數(客戶端)。

相關問題