Domanda

Spero che sto descrivendo abbastanza il mio problema .. ecco qui:

Ho una tabella di dati YUI, ottenere un insieme lato server di record tramite JSON, e quindi popola i dati.

Gli utenti possono fare clic sulle intestazioni per ordinare i dati in tre delle 6 colonne, (che utilizzano una funzione di ordinamento personalizzata per ogni colonna). L'ordinamento è fatto sul lato client.

Quando un utente ordina i dati, ho bisogno di essere in grado di ottenere un elenco completo dei valori da una delle colonne viene mostrato. Ho bisogno di tutti i dati disponibili, non solo ciò che è reso alla pagina. I dati nascosti tramite l'impaginazione devono essere inclusi.

Tutte le idee? Ho provato i metodi handleDataReturnPayload e doBeforeLoadData della DataTable, ma entrambi danno i dati originali, non ordinati.

Sono davvero bloccato qui e ho un cliente a seconda di una funzione che dipende da me ottenere questo elenco ordinato.

Grazie in anticipo.

È stato utile?

Soluzione

Satyam, oltre ai Forum YUI risposto alla mia domanda perfettamente .

  

I dati vengono memorizzati nel   RecordSet. In qualsiasi momento si può andare e   guardarlo, e sarà ordinato come   mostrato sullo schermo, ma avrà   tutti i dati, sia indicato o meno.

     

Metodo getRecordset () vi darà una   riferimento ad esso e poi si può ciclo   attraverso i suoi record.

     

È possibile ascoltare la columnSortEvent   ricevere una notifica è verificata una sorta.

Ho appena sottoscritto alla manifestazione columnSortEvent e in loop con la matrice restituita da datatable.getRecordSet (). GetRecords ().

Altri suggerimenti

Mi piacerebbe consiglio questo distacco ai forum YUI - http://yuilibrary.com/forum/ - che è un ottimo posto per ottenere supporto su questioni DataTable

.

Mi sono imbattuto in questa domanda in cerca di informazioni su come recuperare le informazioni da un set di dati che non è stato visualizzato nel datatable. Se si posiziona i dati nascosti nell'origine dati prima di ogni campo che si desidera visualizzare, si sarà reso vuoto, ma se lo si inserisce dopo l'ultimo campo che sarà reso (come definito dalle colonne oggetto), allora non render, ma ancora accessibile attraverso il record).

var columns = [
    {key:"Whatchamacallits", children:[
        {key:"name" },
        {key:"price" }
    ]}
];
var ds = new YAHOO.util.DataSource('index.php...');
oDataSource.responseType = YAHOO.util.DataSource.TYPE_JSARRAY;
oDataSource.responseSchema = {
    fields:["name","price","id"]
};
var dt = new YAHOO.widget.DataTable("dt-id", columns, ds, {});
dt.subscribe("rowClickEvent", dt.onEventSelectRow);
dt.subscribe("rowSelectEvent", function(p){ alert(p.getData('id'); });
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top