'0' è null o non un oggetto
Domanda
Ho appena passato da jQuery alpha mobile 2 per jQuery Mobile beta 1.0. Sto usando l'accesso CDN per i file JavaScript jQuery e il CSS. Io sono sempre alcuni dati dal server e la visualizzazione nel formato lista. Sto costruzione della lista in modo dinamico nel file javasript.
Stavo usando
$('#detail').html(html);
$('#detail ul').listview();
per aggiornare la mia lista dopo la costruzione di esso.
Si stava lavorando bene con alfa versione di jQuery Mobile, ma ora senza cambiare una sola riga di codice che sto cercando di farlo funzionare utilizzando jQuery Mobile Beta ed è rottura con il seguente errore:
Webpage dettagli di errore
Messaggio: '0' è null o non un oggetto
Linea: 133
Char: 183
Codice: 0
URI: http://user.mydomain.com/scripts/jquery. mobili-1.0b1.min.js
sto facendo qualcosa di sbagliato o qualche problema con la versione beta di file css?
EDIT:
sto ottenendo i dati in formato JSON (diciamo risultato oggetto) utilizzando chiamata AJAX e la visualizzazione in questo modo:
var html = "<ul id="contactDetails" data-role="listview" data-filter="false" data-inset="true">";
html += "<li data-icon='false'><Email:<a href=mailto:'"+ result.Data.email_address_1 + +"'>" + result.Data.email_address_1 + "</a></li>";
html + = 'ul tag di chiusura'
$('div#page2 div#contentMain div#details ul#customerDetails').html(html)
$('div#page2 div#contentMain div#details ul').listview();
Ma Decorate posso vedere i dati provenienti e la visualizzazione correttamente, ma senza lo stile.
Spero che questo aiuta a capire il problema.
Raman
Soluzione 2
Ho verificato questo con jQuery Mobile Forum e la seguente soluzione funziona per me.
$('#details').html(html)
$('#page2').page();
$('ul#customerDetails').listview('refresh');
Altri suggerimenti
Nei tuoi esempi che si sta facendo
$('div#page2 div#contentMain div#details ul#customerDetails').html(html)
$('div#page2 div#contentMain div#details ul').listview();
Ma id
s sono unici quindi non c'è alcun motivo per utilizzare più ID per definire la gerarchia ..
Proprio uso
$('#customerDetails').html(html);
$('#details ul').listview();
Assicurarsi inoltre di fissare i tuoi concatenazioni di stringhe .. e che result.Data
contiene quello che pensi lo fa ..