有没有办法用jQuery数组更新的结果?我已经创建了flexbox,我想要更新它的结果。
我初始化了我的flexbox,如下所示:
$('#myFlex').flexbox({
"results": [
{ "id": "1", "name": "Ant" },
{ "id": "2", "name": "Bear" }
]},
{
allowInput: false,
paging: false,
maxVisibleRows: 8
});这是taken from the documentation,它可以工作。假设我想在不重新初始化flexbox的情况下更新元素。如何做到这一点?
发布于 2011-06-06 11:12:35
好了,我给自己想出了一个解决方案!
Flexbox在初始化时通过变量o.source设置数据。
我所做的是以jQuery .data()的身份存储(和访问) o.source。这使我可以查看/更改该值。
发布于 2012-06-25 08:34:01
在试验同样的问题时,我发现jQuery Flexbox存储了作为引用传递的数据。这意味着您可以这样做:
var data = {results: [{id:1,name:'Ant'},{id:2,name:'Bear'}], total:2};
$('#myFlex').flexbox(data);
// ...
data.results[data.total] = {id:3,name:'Cat'};
data.total++;使用股票插件,它将会工作。唯一要记住的是,您必须记住在添加新元素时还要更新.total属性。
发布于 2011-06-05 12:39:11
您还没有指定如何初始化flexbox或如何获取数据。但是,根据documentation和demos,在指定URL时,名为results的JSON属性用于获取数据行。这一切都应该是自动发生的。例如(直接从文档中获取):
$.ready(function() {
// results.aspx is the page that returns json data in the expected format
$('#fb').flexbox('results.aspx');
}); 回复示例:
{"results":[
{"id":1,"name":"Ant"},
{"id":2,"name":"Bear"},
{...} // more results here...
]} 或者,您应该能够使用resultsProperty来指定不同的属性名称。
https://stackoverflow.com/questions/6240920
复制相似问题