【发布时间】:2012-08-01 05:17:49
【问题描述】:
我在从后面的 c# 代码中访问下拉项目时遇到问题
场景: 我正在使用 jquery/ajax 调用根据用户选择修改下拉列表。在从后面的代码中访问下拉项时,它仍然保留旧列表。
请帮助从后面的 c# 代码访问更新的下拉列表。
示例代码
jQuery 代码:
$.ajax({
type: 'POST',
url: "Search.aspx/LoadNewOptions",
contentType: 'application/json;charset=utf-8;',
dataType: "json",
data: "",
success: function (data) {
$("#dropdown").empty();
$($.parseJSON(data.d)).each(function () {
var Option = $('<option />');
xOption.attr('value', this.value).text(this.label);
$('#dropdown').append(Option);
}
});
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(errorThrown);
}
});
代码背后的 C# 代码:
dropdown.SelectedItem.Value.Trim() // returns old value
替代解决方案: 创建了单独的 javascript 函数并将所选项目值存储在隐藏变量中。从后面的代码访问隐藏变量没有问题。
【问题讨论】:
-
您是在页面加载事件中重新加载下拉值,还是通过检查 Postback 来阻止它? (如果(!IsPostBack){加载东西})
标签: c# javascript jquery