简体   繁体   English

ASP.NET MVC dropdownlist级联错误无法将属性“值”设置为null

[英]Asp.net mvc dropdownlist cascading error Cannot set property 'value' of null

Hy. HY。
I want to make dropdownlist cascadin. 我要制作下拉列表级联。 select dropdownlist and send editorfor.but 选择下拉列表并发送editor.but
Cannot set property 'value' of null error . 无法设置null错误的属性“值”。 I would like to send a value to editorfor a value of dropdownlist. 我想将一个值发送给editor以获得dropdownlist的值。
Can you help me? 你能帮助我吗?

   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>

The problem seems coming from this return statement: 问题似乎来自以下return语句:

return Json(PRICE, JsonRequestBehavior.AllowGet);

This statement returns plain string value which doesn't contain PRICE property, so result.PRICE contains null value and causing null property assignment error message. 该语句返回不包含PRICE属性的纯字符串值,因此result.PRICE包含空值并导致空属性分配错误消息。 If you want to return the price value, simply use this inside done function: 如果要返回价格值,只需在内部done函数中使用以下命令:

document.getElementById("fyt").value = result;

or in jQuery version: 或在jQuery版本中:

$('#fyt').val(result);

But if you still want to return PRICE property, specify it inside JSON data: 但是,如果您仍然想返回PRICE属性,请在JSON数据中指定它:

return Json(new { PRICE = PRICE }, JsonRequestBehavior.AllowGet);

And the AJAX callback should be look like this: 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
    }
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Asp.net MVC中三表级联DropdownList - Three Tables Cascading DropdownList in Asp.net MVC 使用剃刀视图在asp.net mvc中的列中将层叠应用于下拉列表 - Applying cascading to dropdownlist in a column in asp.net mvc with razor view Asp.net MVC中的jquery验证错误 - 无法获取属性&#39;call&#39;的值:object为null或undefined - jquery validation error in Asp.net MVC - unable to get value of property 'call' : object is null or undefined ASP.NET MVC的层叠DropDownList - Cascading DropDownListFor ASP.NET MVC 无法在ASP.NET MVC中的DropDownList中检索选定的值? - Unable to retrieve selected value in DropDownList in ASP.NET MVC? 级联下拉列表而不在asp.net中重新加载页面 - cascading dropdownlist without reloading the page in asp.net 在 ASP.NET C# 中使用动态 ID 级联 DropDownList - Cascading DropDownList using dynamic IDs in ASP.NET C# 如果会话中的属性不为null或默认值,请运行/打印javascript Razor ASP.NET MVC - If property at session not null or default value, run/print javascript Razor ASP.NET MVC 在将模型属性传递给ASP.Net MVC中的函数时获取Null值 - Getting Null value while Passing Model Property to a function in ASP.Net MVC 带有 Razor 的 ASP.NET MVC4 - 按从另一个下拉列表中选择的值过滤下拉列表 - ASP.NET MVC4 with Razor - Filtering dropdownlist by value selected from another dropdownlist
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM