gpt4 book ai didi

javascript - Knockout 问题,无法使用 'in' 运算符搜索 'length'

转载 作者:搜寻专家 更新时间:2023-11-01 04:10:35 25 4
gpt4 key购买 nike

我在使用 Knockout.js 的 Web 应用程序中遇到以下错误

Cannot use 'in' operator to search for 'length'

我的代码:

$(document).ready(function () {
AjaxRequest();
});

function AjaxRequest() {
$.post("../../Api/DisabilitiesHandler.ashx?method=get", function (data) {
var viewModel = {
disabilities: ko.observableArray(data)
};

ko.applyBindings( viewModel, document.body);
});
}

<table>
<tbody data-bind="template: { name: 'disabilitiesRowTemplate', foreach: disabilities }"></tbody>
</table>

<script type="text/html" id="disabilitiesRowTemplate">
<tr>
<td>Name:
<input data-bind="value: Name" /></td>
<td>
Active <input type="checkbox" data-bind="checked: Active" /></td>
</tr>
</script>

这是我的模型

public class Disabilities
{
public int Id { get; set; }
public string Name { get; set; }
public bool Active { get; set; }
}

这是网络服务的代码

context.Response.ContentType = "application/JSON";
DbsaDal.Entities.DBSAEntities db = new DbsaDal.Entities.DBSAEntities();
List<DbsaDal.Model.Disabilities> disabilities = DbsaDal.Entities.Disabilities.Get(db);
context.Response.Write(new JavaScriptSerializer().Serialize(disabilities));

有什么建议吗?我在网上到处搜索,找不到有用的东西

更新 1:

Uncaught TypeError: Cannot use 'in' operator to search for 'length' in [{"Id":1,"Name":"Blind","Active":false},{"Id":2,"Name":"Mute","Active":true}] Knockout.js:92

最佳答案

我发现了我的问题:

disabilities: ko.observableArray(data)

这段代码应该是

disabilities: ko.observableArray(ko.utils.parseJson(data))

关于javascript - Knockout 问题,无法使用 'in' 运算符搜索 'length',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11343922/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com