Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.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
Javascript 将JSON数据从服务器加载到knockout.js observable_Javascript_Html_Knockout.js - Fatal编程技术网

Javascript 将JSON数据从服务器加载到knockout.js observable

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(

我试图使用knockouts.js加载初始数据(来自本地JSON字符串),以便在加载页面后立即在UI中显示它。 我尝试了很多选择,但都失败了或产生了错误

我的最新尝试是(基于“购物车”示例),它会产生错误:
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
}