繁体   English   中英

ASP.NET访问AJAX在postBack上创建了控件

[英]ASP.NET Accessing AJAX created controls on postBack

我在运行时使用AJAX回调到Web服务(.asmx文件)生成2个下拉框和一个CheckBoxList控件。 该服务在服务器上创建两个Dropdown和CheckBoxList,并将呈现的html作为字符串返回,该字符串在运行时使用javascript函数注入到Web页面中。

在postBack期间,我想获取两个下拉框的值,并确定勾选了哪个(如果有的话)复选框。

我是否正确地认为在运行时注入页面的HTML在回发期间不会被发送回服务器? 如果是这种情况,获得我的价值观最明智的方式是什么?

我认为获取动态控件值的最佳方法是使用javascript读取值并将其写入隐藏字段,该字段是页面类的一部分,就在回发之前。

如果有更好的方法,请分享!

在回发期间检索值的一种方法是将值保存在隐藏字段中,因为元素名称建议在页面上不可见 -

<asp:HiddenField id="countrySelected" value="" />

在回复之前的javascript中,您可以填写所需的信息 -

document.getElementById('countrySelected').value = 'USA';

在您的代码隐藏中,您可以选择要使用的值 -

countrySelected.value

由于webservice创建后来在页面中注入的html,因此它们不是服务器控件,因此服务器无法知道它们是否存在。 隐藏的html元素在我看来是这种情况的方式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM