Обновление jQuery flexbox - PullRequest
       3

Обновление jQuery flexbox

2 голосов
/ 05 июня 2011

Есть ли способ обновить результаты флексбокса jQuery с массивом JSON? Я уже создал flexbox и хочу обновить его результаты.

Я инициализирую свой flexbox следующим образом:

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

Это взято из документации , и это работает. Предположим, я хочу обновить элементы без повторной инициализации flexbox. Как это можно сделать?

Ответы [ 3 ]

3 голосов
/ 06 июня 2011

Хорошо, так что я взломал себе решение!

Flexbox устанавливает данные через переменную o.source при инициализации.

То, что я сделал, было сохранить (и получить доступ) o.source какjQuery .data().Это позволяет мне просматривать / изменять значение.

1 голос
/ 25 июня 2012

Экспериментируя с этой же проблемой, я обнаружил, что 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.

0 голосов
/ 05 июня 2011

Вы не указали, как вы инициализировали flexbox или как вы возвращаете данные. Однако согласно документации и demos свойство JSON с именем results используется для получения строк данных, когда вы указали 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 для указания другого имени свойства.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...