2011-02-17 26 views
0

設計是:從JavaScript添加asp.net下拉列表項導致頁回發錯誤

所有元素都在updatepanel中。

點擊一個<tr>的列表來觸發JavaScript函數,將新的<option>添加到asp dropdownlist

但是, 當我在其他按鈕單擊回調到服務器時,我得到一個錯誤信息:

未捕獲 Sys.WebForms.PageRequestManagerServerErrorException: Sys.WebForms.PageRequestManagerServerErrorException: 無效的回發或回調參數。 在配置中使用 或 頁面中的EnableEventValidation =「true」%>啓用了事件驗證。爲了安全起見,此 功能驗證參數 回發或回調事件從 最初呈現它們的服務器控件發起 。如果數據 有效並且是預期的,請使用 ClientScriptManager.RegisterForEventValidation 方法來註冊 回發或回調數據以驗證 。

我明白這個問題。我需要讓服務器端在任何其他postback之前知道下拉列表的更改。

將驗證設置爲false在這種情況下不起作用,無論如何下拉將會丟失新項目。

我做了一些研究,以及可能的解決方案:

1)使用ViewState? Request Form?任何人都可以舉個例子?

2)在服務器端添加dropdownlist項。但是我想讓整個tr行可點擊來觸發事件。我可以點擊tr和fire,例如。其第一個孩子linkbuttonlinkbutton在其他地方。

3)我試過Jquery.ajax和webmethod,它可以觸發服務器事件,但由於所有方法都是static (shared),所以它不允許我編輯downdownlist實例。

任何類型的解決方案將有所幫助!

問候,

+0

當點擊時,自定義Javascript函數是否向服務器回調(ASP.NET-AJAX)來更新下拉列表?還是僅僅是一個客戶端選項添加功能,根本不涉及服務器? – DashK 2011-02-17 01:27:50

回答

相關問題