設計是:從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,例如。其第一個孩子linkbutton
或linkbutton
在其他地方。
3)我試過Jquery.ajax
和webmethod,它可以觸發服務器事件,但由於所有方法都是static (shared)
,所以它不允許我編輯downdownlist實例。
任何類型的解決方案將有所幫助!
問候,
當點擊
回答
你應該觸發服務器端事件處理程序,在這篇文章中描述的更新從JavaScript列表。 http://codeclimber.net.nz/archive/2007/06/26/how-to-refresh-an-updatepanel-from-javascript.aspx
來源
2011-02-17 01:45:59 Vadim
謝謝,它的工作原理,找不到其他解決方法。 – 2011-02-22 10:26:41
相關問題