Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.NET Json不';不出现_Json_Asp.net Mvc - Fatal编程技术网

ASP.NET Json不';不出现

ASP.NET Json不';不出现,json,asp.net-mvc,Json,Asp.net Mvc,请参考此链接 我遵循了网站上写的内容。但是,Json.Result不会出现。我试图在html中包含这个(@使用Newtonsoft.Json),但它仍然没有出现。为什么呢?有什么解决办法吗 这是我的剧本: fillDatatable(); function fillDatatable() { var cart = @Html.Raw(Json.Result(@ViewBag.cart)); alert(cart.Items.ItemID); } 编辑: if (Purcha

请参考此链接

我遵循了网站上写的内容。但是,
Json.Result
不会出现。我试图在html中包含这个(
@使用Newtonsoft.Json
),但它仍然没有出现。为什么呢?有什么解决办法吗

这是我的剧本:

fillDatatable();

function fillDatatable() {
    var cart = @Html.Raw(Json.Result(@ViewBag.cart));
    alert(cart.Items.ItemID);
}
编辑:

if (PurchaseOrder != "") {
                    var tableHTML = '';
                    $.each(PurchaseOrder, function (index, value) {
                        tableHTML += "<tr>";
                        tableHTML += "<td>" + value.items.itemID + "</td>";
                        tableHTML += "<td>" + value.items.itemModelDescription + "</td>";
                        tableHTML += "<td>";
                        tableHTML += "<input id='UnitPrice" + value.items.ItemID + "' class='form-control b-r-xl text-right' value='" + value.items.itemUnitPrice + "' oninput='return change_unitprice('" + value.items.itemID + "')' />";
                        tableHTML += "</td>";
                        tableHTML += "<td>";
                        tableHTML += "  </tr>";
                    });
                    $("#TableRecords").html(tableHTML);
                }
编辑:

if (PurchaseOrder != "") {
                    var tableHTML = '';
                    $.each(PurchaseOrder, function (index, value) {
                        tableHTML += "<tr>";
                        tableHTML += "<td>" + value.items.itemID + "</td>";
                        tableHTML += "<td>" + value.items.itemModelDescription + "</td>";
                        tableHTML += "<td>";
                        tableHTML += "<input id='UnitPrice" + value.items.ItemID + "' class='form-control b-r-xl text-right' value='" + value.items.itemUnitPrice + "' oninput='return change_unitprice('" + value.items.itemID + "')' />";
                        tableHTML += "</td>";
                        tableHTML += "<td>";
                        tableHTML += "  </tr>";
                    });
                    $("#TableRecords").html(tableHTML);
                }
if(采购订单!=“”){
var tableHTML='';
美元。每个(采购订单、功能(索引、值){
tableHTML+=“”;
tableHTML+=“”+value.items.itemID+“”;
tableHTML+=“”+value.items.itemModelDescription+“”;
tableHTML+=“”;
tableHTML+=“”;
tableHTML+=“”;
tableHTML+=“”;
tableHTML+=“”;
});
$(“#TableRecords”).html(tableHTML);
}

查看循环中的my HTML,在这里可以看到change_unitprice函数。我试图传递一个id的值,但根据控制台的结果,它是未定义的?为什么会这样?

我认为对复杂对象有效的最简单方法如下:

@Html.Raw(Json.Encode(ViewBag.cart))

您正在引用的示例不包含问题中包含的代码。它描述了如何使用
Json.Encode()
ViewBag
字段获取数据。代码不起作用的可能问题有:

  • 使用未定义的
    购物车
    字段
  • 使用未定义的
    属性
  • 正在尝试处理尚未加载的HTML文档
  • 因此,请按原样使用本示例中的函数:

    <script>
        $(document).ready(function(){
            var StockList =@Html.Raw(Json.Encode(@ViewBag.StockList));
            if (StockList != '') {
                var tableHtml;
                $.each(StockList, function( index, value ) {
                    tableHtml +="<tr><td>" + value.stockId + "</td><td>" + value.StockName + "</td><td>" + value.StockPrice + "</td></tr>";
                  });
                $("#output").html(tableHtml);
            }
        })
    </script>
    

    有关更多信息,请参阅以下帖子:

    您可以在此处查阅:您可以在此处查阅:It Total worked!但请看我编辑的评论。我错在哪里?连接有什么问题吗?@Jeffrey Estera:请添加
    Index.cshtml
    Index()
    操作和模型定义的完整代码好吗?代码中似乎有一个bug,我们没有它。