/ / Aktualizowanie fboxbox jQuery - jquery, jquery-flexbox

Aktualizowanie fboxbox jQuery - jquery, jquery-flexbox

Czy istnieje sposób na zaktualizowanie wyników fleksji jQuery z tablicą JSON? Stworzyłem już Flexbox i chcę zaktualizować jego wyniki.

Inicjuję mój flexbox w następujący sposób:

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

To jest zaczerpnięte z dokumentacjii to działa. Załóżmy, że chcę zaktualizować elementy bez reinicjowania flexbox. Jak to zrobić?

Odpowiedzi:

3 dla odpowiedzi № 1

Ok, więc zhakowałem sobie rozwiązanie!

Flexbox ustawia dane za pomocą zmiennej o.source po inicjalizacji.

To co zrobiłem to przechowywać (i dostęp) o.source jako jQuery .data(). To pozwala mi wyświetlić / zmienić wartość.


1 dla odpowiedzi nr 2

Eksperymentując z tym samym problemem, dowiedziałem się, że jQuery Flexbox przechowuje dane przekazane jako referencje. Oznacza to, że możesz to zrobić:

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++;

z wtyczką giełdową i będzie działać. Jedyną rzeczą, o której należy pamiętać, jest to, że musisz również pamiętać o aktualizacji .total właściwość przy dodawaniu nowych elementów.


0 dla odpowiedzi № 3

Nie określono, w jaki sposób zainicjowano system Flexbox lub w jaki sposób odzyskujesz dane dokumentacja i dema, właściwość JSON o nazwie results jest używany do uzyskania wierszy danych po określeniu adresu URL. Powinno to nastąpić automatycznie, na przykład (bezpośrednio z dokumentów):

$.ready(function() {
// results.aspx is the page that returns json data in the expected format
$("#fb").flexbox("results.aspx");
});

Przykładowa odpowiedź:

{"results":[
{"id":1,"name":"Ant"},
{"id":2,"name":"Bear"},
{...} // more results here...
]}

Alternatywnie powinieneś być w stanie używać resultsProperty określić inną nazwę właściwości.