javascript - Asp.net mvc dropdownlist 级联错误无法设置属性“值”为空
问题描述
海。
我想制作下拉列表级联。选择下拉列表并发送 editorfor.but
Cannot set property 'value' of null error 。我想向编辑器发送一个值以获取下拉列表的值。
你能帮助我吗?
public JsonResult GetPrice(string log)
{
int id = 1;
HomeController.sqlconnection con = new HomeController.sqlconnection();
string FIRMA = "select t.FIRMA,t.donem FROM dbo.TBLFRM as t where t.ID=" + id + "";
SqlCommand cmd = new SqlCommand(FIRMA, con.connect());
SqlDataReader rdrr = cmd.ExecuteReader();
rdrr.Read();
string firma = rdrr["FIRMA"].ToString();
string donem = rdrr["DONEM"].ToString();
ExtreModel item = new ExtreModel();
item.ItemList = new List<ExtreModel>();
string urun = "select P.PRICE from DBO.LG_" + firma + "_PRCLIST as p,DBO.LG_" + firma + "_ITEMS as I WHERE P.CARDREF=I.LOGICALREF AND P.CARDREF=" + log + "";
SqlCommand cmdd = new SqlCommand(urun, con.connect());
SqlDataReader rdr = cmdd.ExecuteReader();
rdr.Read();
string PRICE = rdr[0].ToString();
con.connect().Close();
return Json(PRICE, JsonRequestBehavior.AllowGet);
}
<script>
$("#LOGI").change(function () {
var select = $(this);
var cityname = select.val();
if (cityname != "") {
$.ajax({
method: "GET",
url: '/Mobil/GetPrice' + '?log=' + cityname,
beforeSend: function () {
}
}).done(function (result) {
document.getElementById("fyt").value = result.PRICE;
});
} else {
}
});
</script>
解决方案
问题似乎来自此return
声明:
return Json(PRICE, JsonRequestBehavior.AllowGet);
此语句返回不包含PRICE
属性的纯字符串值,因此result.PRICE
包含空值并导致空属性分配错误消息。如果你想返回价格值,只需使用这个内部done
函数:
document.getElementById("fyt").value = result;
或在 jQuery 版本中:
$('#fyt').val(result);
但如果您仍想返回PRICE
属性,请在 JSON 数据中指定它:
return Json(new { PRICE = PRICE }, JsonRequestBehavior.AllowGet);
AJAX 回调应该是这样的:
$("#LOGI").change(function () {
var cityname = $(this).val();
if (cityname != "") {
$.ajax({
type: "GET",
url: '/Mobil/GetPrice',
data: { log: cityname }
}).done(function (result) {
$("#fyt").val(result.PRICE); // now the price property should exist
});
} else {
// do something else
}
});
推荐阅读
- javascript - 为什么 0.35 + 9.7 的总数在 Javascript 中会导致 10.049999999999999?
- csvhelper - 在 ClassMap ConvertUsing 方法中创建新记录
- typescript - TYPESCRIPT - 快速会话处理
- icons - 自动 - 从单个源图标生成一组预配置的图标
- bash - bash中的表格单元格排序
- python - 为ndarray的每两个维度创建散点图
- excel - 从 Excel VBA 替换 PowerPoint 中的表格文本,保留 PowerPoint 格式
- python - Python列表到np.array的计数
- javascript - 错误说我忘记从它定义的文件中导出我的组件,但我没有导出任何自定义组件(React)
- python - XML 2x xml 中相同的兄弟姐妹,我如何获得第二个?