/ Aktualizácia jQuery flexbox - jquery, jquery-flexbox

Aktualizácia jQuery flexbox - jquery, jquery-flexbox

Existuje spôsob, ako aktualizovať výsledky jQuery flexbox s poľom JSON? Už som vytvoril flexbox a chcem aktualizovať jeho výsledky.

Inicializujem svoj flexbox takto:

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

Toto je prevzaté z dokumentácie, a to funguje. Predpokladajme, že chcem aktualizovať prvky bez reinitializácie flexboxu. Ako sa to dá urobiť?

odpovede:

3 pre odpoveď č. 1

Dobre, tak som si vyrazil riešenie!

Flexbox nastavuje údaje prostredníctvom premennej o.source pri inicializácii.

Čo som urobil bolo uloženie (a prístup) o.source ako jQuery .data(), To mi umožňuje zobraziť / zmeniť hodnotu.


1 pre odpoveď č. 2

Pri experimentovaní s tým istým problémom som zistil, že jQuery Flexbox ukladá údaje prenesené ako referencia. To znamená, že to môžete urobiť:

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

s zásobníkom plugin a bude fungovať. Jediná vec, ktorú je potrebné mať na pamäti, je, že musíte pamätať aj na aktualizáciu .total vlastnosť pri pridávaní nových prvkov.


0 pre odpoveď č. 3

Nebolo zadané, ako ste iniciovali flexbox alebo ako obnovujete údaje dokumentácia a ukážky, vlastnosť JSON s názvom results sa používa na získanie riadkov údajov, keď ste zadali adresu URL.To by sa malo stať automaticky.Napríklad (priamo z dokumentov):

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

Odpoveď vzorky:

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

Prípadne by ste mali byť schopní používať resultsProperty zadajte iný názov vlastníctva.