c# - 当我在客户端创建选项时如何在服务器端获取下拉选定项值

标签 c# jquery asp.net

我的 JavaScript 代码

$().ready(function () {
       $.ajax({
           type: "POST",
           url: "../WebService.asmx/GetDistricts",
           data: "{}",
           contentType: "application/json; charset=utf-8",
           dataType: "json",
           success: function (msg) {
               BindDist(msg.d);
           }
       });
   });

作为

function BindDist(msg) {
       $.each(msg, function () {

           $("#dropDist").append($("<option></option>").val(this['DistrictId']).html(this['Name']));

       });
   }

在服务器端,我想通过 dropDist.selectedItem 获取值。但是我无法获取如何做到这一点的值。

int DistrictId = Int32.Parse((dropDist.SelectedValue).ToString());

我如何在服务器端获取下拉选择的值?非常感谢任何帮助我。

最佳答案

如果您在 JavaScript 中添加选项,则无法从下拉列表中获取所选值。此外,您还丢失了 SelectedIndexChanged 事件处理程序。如果您需要在客户端填充下拉列表并且仍然能够使用 SelectedValue 属性和 SelectedIndexChanged 事件,您需要开发自己的 ajax 服务器控件。或者您可以使用 AjaxControlToolkit 库中的 ComboBox 等。

尽管如此,如果您仍然想在客户端上使用常规 DropDown 填充,那么您可以在服务器上获取所选值,如下所示:string dropDistSelectedValue = Request.Form[dropDist.UniqueID];

关于c# - 当我在客户端创建选项时如何在服务器端获取下拉选定项值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13320761/

相关文章:

c# - 如何停止在 ASP.NET 用户控件中定义两次 Javascript 函数

c# - 我可以在数据驱动测试中使用动态生成的 XML 文件吗

c# - ASP.NET 身份 : Additional properties to ApplicationUserRole

jQuery 用户界面 : Removing class on the change event (nestedSortable plugin)

JavaScript/jQuery : firefox hangs on DOM loop insertion (show images one by one)

c# - 为什么它总是一个空值?

c# - 我可以将 WCF DataContract 添加到复杂类型吗?

C#:自定义程序集目录

javascript - 自定义确认弹出窗口无法正常工作

c# - 自定义 MonoDevelop 以提高生产力和编码乐趣