0

我的视图中有以下脚本:-

<script type="text/javascript">

    $(document).ready(function () {
        $("#Server_VirtualCenterID").attr("disabled", "disabled");
        if ($(this).val() == "3") {
            $("#Server_VirtualCenterID").removeAttr("disabled");
        }
        else {
            $("#Server_VirtualCenterID").attr("disabled", "disabled");
        }
        $("#Switch_RackID").change(function () {
            var idRack = $(this).val();
            $.getJSON("/Rack/LoadDataCenterByRack", { id: idRack },
            function (RackData) {
                var select = $("#Switch_TMSRack_DataCenter_Name");
                select.empty();
                select.append(Text);

                });
            });
        });
       </script>

当下拉列表更改时,它将调用以下操作方法:-

public JsonResult LoadDataCenterByRack(int id)
    {
      string datacentername = repository.FindRack(id).DataCenter.Name;

      var DCData = new { Text = datacentername, Value = datacentername };

        return Json(DCData, JsonRequestBehavior.AllowGet);
    }

但是返回的 json 不会作为Switch_TMSRack_DataCenter_Name输入字段的文本添加?任何人都可以建议吗?

4

1 回答 1

1

你应该使用select.append(RackData.Text)而不是select.append(Text)

提供RackData是一个 JSON。RackData响应数据也是如此。您需要TextRackData.

我建议简单地使用

$("#Switch_TMSRack_DataCenter_Name").val(RackData.Text);
于 2013-10-31T13:21:12.250 回答