2011-11-03 108 views
0

我正在使用VS2010,C#開發我的ASP.NET Web應用程序。我有一個組合框用於選擇省和另一個組合框來選擇城市,當用戶選擇一個省時,城市組合框應該立即顯示屬於該省的城市。 我已將AJAX腳本管理器插入到我的頁面中,也是一個AJAX更新面板(均來自工具箱),其中插入了我的組合框。然後,我啓用了省組合框autopostback屬性,以便當用戶更改他的選擇時,我可以檢測它並相應地更改城市組合框的內容。 它工作正常,因爲我從我的數據庫中加載省和城市名稱到頁面啓動時的列表(當然這個加載過程在if(!IsPostback)語句中執行,因此數據只加載一次)。我認爲更新城市組合框所需的時間比所需的時間多一點,因爲當用戶更改省組合框選擇時有回傳,什麼是執行此操作的最佳(正確)方式?可以嗎?有沒有更好的方法來做到這一點?如何在省份組合框選擇更改後立即更新城市組合框,因爲目前存在短暫的延遲。ASP.NET AJAX延遲

感謝

回答

0

你總是會,如果你有一個ASP.NET回發做在服務器端有一個延遲。

另一種選擇是,以輸出一些JSON到你的頁面初始加載包含所有的省份包含其各自城市每個省一個嵌套數組的數組。

然後,您可以刪除自動回發並使用JavaScript處理所有客戶端。只要所選省份發生變化,您只需解析您的JSON並將所有關聯的城市添加到第二個下拉列表。

+0

謝謝,但你能給我一個樣品嗎? –

+0

你有使用JSON和JavaScript的經驗嗎?如果沒有,我建議閱讀這些內容,因爲它們會爲您的.NET技能提供一個非常有價值的補充。 ASP.NET可以爲你做很多事,讓事情變得簡單,但不一定高效。 –