Javascript 将JSON数据从服务器加载到knockout.js observable
我试图使用knockouts.js加载初始数据(来自本地JSON字符串),以便在加载页面后立即在UI中显示它。 我尝试了很多选择,但都失败了或产生了错误 我的最新尝试是(基于“购物车”示例),它会产生错误:Javascript 将JSON数据从服务器加载到knockout.js observable,javascript,html,knockout.js,Javascript,Html,Knockout.js,我试图使用knockouts.js加载初始数据(来自本地JSON字符串),以便在加载页面后立即在UI中显示它。 我尝试了很多选择,但都失败了或产生了错误 我的最新尝试是(基于“购物车”示例),它会产生错误: TypeError:cartLine.filterValue不是函数。 有关守则如下: //Load initial data from server var JSONdataFromServer = $("#JSONdataFromServer").val(); console.log(
TypeError:cartLine.filterValue不是函数
。
有关守则如下:
//Load initial data from server
var JSONdataFromServer = $("#JSONdataFromServer").val();
console.log(JSONdataFromServer);
var dataFromServer = ko.utils.parseJson(JSONdataFromServer);
self.lines.push(new CartLine(dataFromServer));
也许有人知道我做错了什么?
这看起来是个难题。
感谢我发现解决这个问题的方法(不确定这是最准确的方法)是从服务器接收整个JSON,因此第一个单元格将包含我希望显示的过滤器。此外,服务器将发送一个参数“filtersToDisplay”,指示需要显示多少个过滤器 默认情况下,filtersToDisplay=1仅显示第一行
for(i=0;i<$(“#filtersToDisplay”).val();i++{
self.lines.push(new CartLine(self.lines))//默认情况下放入一行
}
谢谢
for (i = 0; i < $("#filtersToDisplay").val(); i++) {
self.lines.push(new CartLine(self.lines))// Put one line in by default
}