【问题标题】:Updating a jQuery flexbox更新 jQuery 弹性框
【发布时间】:2023-03-25 13:29:01
【问题描述】:

有没有办法用 JSON 数组更新 jQuery flexbox 的结果?我已经创建了 flexbox,我想更新它的结果。

我按如下方式初始化我的 flexbox:

$('#myFlex').flexbox({  
        "results": [  
            { "id": "1", "name": "Ant" },  
            { "id": "2", "name": "Bear" }
        ]}, 
    {  
    allowInput: false,  
    paging: false,  
    maxVisibleRows: 8  
});

这是taken from the documentation,它有效。假设我想更新元素而不重新初始化 flexbox。如何做到这一点?

【问题讨论】:

    标签: jquery jquery-flexbox


    【解决方案1】:

    好的,所以我自己破解了一个解决方案!

    Flexbox在初始化时通过变量o.source设置数据。

    我所做的是将o.source 存储(和访问)为 jQuery .data()。这允许我查看/更改值。

    【讨论】:

      【解决方案2】:

      在尝试同样的问题时,我发现 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 属性。

      【讨论】:

        【解决方案3】:

        您尚未指定如何初始化 flexbox 或如何获取数据。但是,根据documentationdemos,名为results 的JSON 属性用于在您指定URL 时获取数据行。这一切都应该自动发生。例如(直接来自文档):

        $.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 指定不同的属性名称。

        【讨论】:

        • "您应该能够使用 resultsProperty 指定不同的属性名称。"我怎样才能做到这一点? $("#myid").results(results) 不起作用(resultsProperty == 'results')
        • @babonk 你能发表一下 1. 你是如何初始化 flexbox 的吗? 2. 你的回复是什么样的?这一切都应该自动发生。
        • 更新了问题,如果您想要更多详细信息,请告诉我,我可以添加它们
        • @babonk 啊,我明白了 - 你正在使用静态选项。 AFAICT,该数据无法更新。允许更新的唯一方法是使用 URL,该 URL 应指向响应 JSON 数据的服务器端资源。
        • 我想我会尝试自己深入研究插件。完成后会发布我的答案
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-12-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多