2

我的 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());

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

4

1 回答 1

6

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

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

于 2012-11-10T10:27:39.200 回答