使用 AJAX 响应填充 DropDownList 并使用 ASP.NET WebForms 在服务器上获取所选值
我在这个简单的场景中遇到了麻烦。
首先,我使用 ASP.NET WebForms。
在用户在第一个下拉列表(选择)上选择一个值后,我正在使用 jQuery 进行 ajax 调用。此调用将返回一个值数组,我将用它填充第二个 DropDownList。回发后,DropDownList 当然没有任何项目。
我尝试在页面的 Init 事件中重新填充 DropDownList,但视图状态尚未处理,我需要第一个 DropDownList 的选定值才能获取正确的值。
我知道我可能可以通过将下拉列表的选定值放入隐藏字段并稍后在页面周期中将其取回来破解某些内容,但肯定有一些东西我丢失了?更简单的方法(请不要使用 UpdatePanel 解决方案)。
I'm having trouble with this simple scenario.
First, I'm using ASP.NET WebForms.
I'm making an ajax call using jQuery after the user select a value on a first dropdown (select). This call will return me an array of values with which I fill a second DropDownList. After a postback, of course the DropDownList has no items.
I have tried to re-fill the DropDownList in the Init event of the page, but the viewstate has not been processed and I need the selected value of the first DropDownList to get the correct values.
I know that I could probably hack something with putting the selected value of the dropdown inside an hidden field and get it back later in the page cycle, but surely there is something I'm missing? A more easy way (no UpdatePanel solution please).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用 JavaScript/AJAX
您可以使用 PageMethods 获取第二个列表的数据。
页面方法是具有
[WebMethod]
属性的静态函数。例如:要了解如何执行此操作,您应该阅读页面 using-jquery-to-directly-call-aspnet-ajax-page-methods
不使用 Ajax
With JavaScript/AJAX
You can use PageMethods to get the Data for the second list.
Page Methods are static functions with the
[WebMethod]
attribute. eg:To see how to do this, you should read the page using-jquery-to-directly-call-aspnet-ajax-page-methods
Without Ajax