2012-09-03 80 views
0

我有一個下拉列表正在使用Visual Studio 2010中的數據源使用數據填充數據。所有的值都是唯一的,我已經設置了一個事件來攜帶在選擇新值時執行操作。當我在下拉列表中選擇一個新值時,會選擇新值,但事件不會觸發。我在代碼中放置了一個斷點,以查看它是否正在被執行而沒有被擊中。Asp.net MVC的C# - DropDownList SelectedIndexChanged沒有射擊

我讀到有關設置下拉列表的AutoPostBack爲true,但是這一切似乎做的就是刷新頁面,設置列表恢復到原來的選中狀態(可能的原因該事件不觸發?)。

我也讀了一些關於啓用ViewState,因爲這可能會導致它無法啓動,我試圖把EnableViewState =「true」放在視圖的頂部無濟於事。 EnableViewState屬性在下拉列表中也設置爲true。

如果有人對解決方案有所瞭解,我將不勝感激。

謝謝

+0

請顯示一些代碼。 – SMK

+0

這是MVC還是WebForms?您的問題標題,然後問題內容混淆。 MVC沒有'ViewState','AutoPostBack'或'EnableVeiwState' –

回答

3

與Asp.Net MVC你沒有事件和回發像Asp.Net。

您應該使用form標記來處理下拉列表的值,因爲它是一個經典的HTML頁面。如果要以異步方式處理,請使用javascript連接到onchange的下拉列表

0

我通常會發現這是由數據綁定引起的。如果Page_Load中的代碼綁定下拉列表,而不檢查Page.IsPostBack(或處理控件事件之前的管道中的其他位置),這將抑制SelectedIndexChanged事件。

另一種可能性是您沒有在控件的標準標記中獲得OnSelectedIndexChanged =「DropDownListId_SelectedIndexChanged」,或者在@Page指令中沒有AutoEventWireup = true。

你能發佈你的代碼嗎?

剛剛看過標籤和@ iridio的帖子。這真的是MVC?我不希望在MVC應用程序中看到System.Web.UI.WebControls,但我不是MVC專家。

相關問題