2009-12-22 77 views
0

我新的ASP.NET,AJAX,JSON,jQuery和我試圖找出一個解決如下問題:ASP.NET:反序列化服務器端對象

有一個在ASP.NET本網頁其中將包含幾個單選按鈕。 page_load()將查詢SQL Server數據庫並獲取年數列表,例如2009,2008,2007,2006等。在客戶端腳本中,我需要創建與返回的年數一樣多的單選按鈕。對於例如如果查詢返回2009,2008,2007,2006,那麼頁面應顯示4個單選按鈕。我可以返回的年數有一個上限,所以我打算創建許多單選按鈕並根據返回的年數進行顯示/隱藏。

到目前爲止我做了什麼?

  1. 在Page_Load()中,我查詢表格以將年列表提取到arraylist中。
  2. 使用JavaScriptSerializer序列化ArrayList。

問題:

  1. 我知道我需要反序列化服務器端對象。但是,如何在使用jQuery時訪問它?
  2. 我是否採取了正確的方法解決問題?

請原諒我的情況下我的問題和方法是天真的。請在這方面指導我。

歡呼聲

+1

嗨, 是否有你想計算單選按鈕客戶端的數量的原因?動態創建服務器端並將它們推送到客戶端可能更容易。 http://www.4guysfromrolla.com/articles/081402-1.aspx – keyboardP

回答

0

你必須這樣做嗎?爲什麼不使用RadioButtonList

+0

是的,這聽起來是一個不錯的選擇。但我需要能夠做出多個選擇。 radioButtonList是否允許這種行爲?如果沒有,那麼我可能不得不嘗試一個checkBoxList。 – Arnkrishn

+0

事實上,我有一個應該有一個複選框網格的頁面。有些事情是這樣的http://weblogs.asp.net/jgalloway/archive/2007/07/07/checkbox-grids-in-asp-net.aspx再次行和列標題列表將從數據庫中獲得,即我可以不要在手前解決它。我該如何處理? – Arnkrishn

0

嘗試類似這樣的東西。

<form id="form1" runat="server"> 
    <div> 
     <asp:RadioButtonList ID="RadioButtonList1" runat="server" DataSourceID="SqlDataSource1" 
      DataTextField="year" DataValueField="year"> 
     </asp:RadioButtonList><asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:tempdbConnectionString %>" 
      SelectCommand="Select 2009 as year&#13;&#10;union all&#13;&#10;select 2008 as year&#13;&#10;union all&#13;&#10;select 2007 as year&#13;&#10;union all&#13;&#10;select 2006 as year&#13;&#10;union all&#13;&#10;select 2005 as year"> 
     </asp:SqlDataSource> 
    </div> 
</form>