我的asp.net mvc web应用程序中有以下脚本: -
$("#Server_RackID").change(function () {
var idDC = $(this).val();
$.getJSON("/Server/LoadDataCenterByRackID", { rackid: idDC },
function (DCData) {
var select = $("#Server_TMSRack_DataCenterID");
select.empty();
$("#Server_TMSRack_DataCenterID").val() = DCData.Value;
});
});
这个想法是当用户更改Server_RackID下拉列表时,我需要根据返回ID选择Server_TMSRack_DataCenterID。将被调用的动作方法如下所示: -
[CheckUserPermissions(Action = "Edit", Model = "Server")]
public JsonResult LoadDataCenterByRackID(string rackid)
{
var datacenter = repository.FindRack(Convert.ToInt32(rackid));
return Json(new { Value = datacenter.DataCenterID }, JsonRequestBehavior.AllowGet);
}
但是当我运行我的代码时,我收到以下错误: -
0x800a138b - JavaScript运行时错误:无法分配给函数 结果
答案 0 :(得分:1)
您正在尝试为val()函数分配值,而不是“#Server_TMSRack_DataCenterID”。所以而不是:
$("#Server_TMSRack_DataCenterID").val() = DCData.Value;
尝试
$("#Server_TMSRack_DataCenterID").val(DCData.Value);
答案 1 :(得分:0)
你错误地使用val()
是你搞砸了它的原因。查看here以获取val()
的文档,该文档必须为$(identifier).val(value)
。试试这个
$("#Server_RackID").change(function () {
var idDC = $(this).val();
$.getJSON("/Server/LoadDataCenterByRackID", { rackid: idDC },
function (DCData) {
$("#Server_TMSRack_DataCenterID").val(DCData.Value);
});
});