2011-03-01 68 views
1

我使用兩個列表框將項目從一個移動到另一個使用jQuery。對於這兩個列表框,自動回發設置爲false。 有沒有辦法在回發中訪問項目服務器端?ASP.NET訪問客戶端更新回發

謝謝

回答

1

這是可以使用WebMethods。見Matt Berseth的this

0

如果您的客戶端移動項目,當回發時您將看不到列表框的更新,因爲控件將在回發期間使用原始視圖狀態(頁面加載時的值)。您最好的選擇是將列表框的項目保存到您回發頁面時可以閱讀的隱藏字段中。如果你只是想要選擇的項目,你可以通過使用「Request.Form [listbox.ClientID]」得到這個。

關於同一主題的其他職位:

Problem getting list box items added through jquery in code behind

Asp.Net ListBox and JQuery

-1

如果我理解你正確的ASPX頁面看起來像:

<form id="form1" runat="server"> 
    ... 
    <asp:ListBox ID="listbox1" runat="server"> 
    ... 
    </asp:ListBox> 
    ... 
    <asp:ListBox ID="listbox2" runat="server"> 
    ... 
    </asp:ListBox> 
    ... 
</form> 

您應該能夠訪問只需通過在代碼b中訪問服務器端控件上的屬性即可獲得控件的值ehind類:

例如,如果你的列表框只允許選擇單個項目(SelectionMode = ListSelectionMode.Single):

// in ASP.NET code-behind 
if (listbox1.SelectedIndex > -1) 
{ 
    string value1 = listbox1.SelectedItem.Value; 
} 

或者,你的列表框允許選擇多個項目(SelectionMode = ListSelectionMode.Multiple):

// in ASP.NET code-behind 
foreach (ListItem item in listbox1.Items) 
{ 
    if (item.Selected) 
    { 
     // do something with selected item 
    } 
} 
+0

運算提到他使用添加項目jQuery和希望在服務器端讀取它們,你的建議,因爲服務器端將不利於將讀取列表框的視圖狀態,因而不會訪問添加的項目b y jquery – 2013-09-16 08:26:01