/ / Aktualisieren einer jQuery flexbox - jquery, jquery-flexbox

Aktualisieren einer jQuery flexbox - jquery, jquery-flexbox

Gibt es eine Möglichkeit, die Ergebnisse einer jQuery flexbox mit einem JSON-Array zu aktualisieren? Ich habe die Flexbox bereits erstellt und möchte die Ergebnisse aktualisieren.

Ich initialisiere meine Flexbox wie folgt:

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

Das ist aus der Dokumentation entnommen, und es funktioniert. Angenommen, ich möchte die Elemente aktualisieren, ohne die Flexbox neu zu initialisieren. Wie kann das gemacht werden?

Antworten:

3 für die Antwort № 1

Ok, also habe ich mir eine Lösung gehackt!

Flexbox setzt die Daten über die Variable o.source bei der Initialisierung.

Was ich gemacht habe, war Laden (und Zugang) o.source als jQuery .data(). Dadurch kann ich den Wert anzeigen / ändern.


1 für die Antwort № 2

Beim Experimentieren mit demselben Problem habe ich herausgefunden, dass jQuery Flexbox die Daten speichert, die als Referenz übergeben wurden. Dies bedeutet, dass Sie dies tun können:

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

mit dem Stock-Plugin und es wird funktionieren. Das einzige, was Sie beachten sollten, ist, dass Sie daran denken müssen, auch die .total Eigenschaft beim Hinzufügen neuer Elemente.


0 für die Antwort № 3

Sie haben nicht angegeben, wie Sie flexbox initialisiert haben oder wie Sie die Daten zurückbekommen Dokumentation und das Demos, die JSON-Eigenschaft mit dem Namen results wird verwendet, um die Datenzeilen zu erhalten, wenn Sie eine URL angegeben haben. Dies sollte automatisch geschehen. Zum Beispiel (direkt aus der Dokumentation):

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

Beispielantwort:

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

Alternativ sollten Sie in der Lage sein zu verwenden resultsProperty um einen anderen Eigenschaftsnamen anzugeben.