Knockout JS:Bind Json从c#Bind返回数据
我得到了响应和json数组,但没有映射到html标记上。。请帮忙这是我的密码 C#代码 HTML和JSCodeKnockout JS:Bind Json从c#Bind返回数据,c#,json,knockout.js,C#,Json,Knockout.js,我得到了响应和json数组,但没有映射到html标记上。。请帮忙这是我的密码 C#代码 HTML和JSCode <div class="container"> <ul data-bind="foreach:dat"> <li> <span data-bind="text:strAddress"></span> </li> </ul> <
<div class="container">
<ul data-bind="foreach:dat">
<li>
<span data-bind="text:strAddress"></span>
</li>
</ul>
</div>
<script>
$(document).ready(function () {
var dat;
$.getJSON("@Url.Action("../Employee/ShowEmpData")")
.done(function (data)
{
dat = JSON.stringify(data);
console.log(dat);
alert(dat);
ko.applyBindings(dat);
})
.fail(function (jqxhr, txtsts, err) { alert("fail: " + err); });
});
</script>
-
$(文档).ready(函数(){
var dat;
$.getJSON(“@Url.Action(../Employee/ShowEmpData”))
.完成(功能(数据)
{
dat=JSON.stringify(数据);
控制台日志(dat);
警报(dat);
ko.应用绑定(dat);
})
.fail(函数(jqxhr、txtsts、err){alert(“fail:+err”);});
});
当我使用Json.strinfy(data)时,代码中唯一的问题是将Json转换为字符串:
dat = JSON.stringify(data); //don't do it
相反,只需将data
分配给dat
:
dat = data; //because you're already getting JSON from server
您从服务器得到的响应是什么?将它添加到问题中。好的,请看图片。当我使用dat=数据时,这对mee不起作用;其节目的[对象对象对象],[对象对象],[对象对象对象],[对象对象对象],[对象对象对象],[对象对象对象],[对象对象对象]试试这个
JSON.parse(JSON.stringify(data))代码>。因为我唯一可能想到的问题是,ko.applyBindings
没有接收到正确的JSON对象。不,当我使用JSON.parse时,这对我不起作用,然后将其转换回[object object],…我从3天开始就找到了答案。你能检查一下我与HTML的绑定吗
dat = data; //because you're already getting JSON from server