«0» - ноль или не объект - PullRequest
0 голосов
/ 26 июля 2011

Я только что перешел с jquery mobile alpha 2 на jquery mobile beta 1.0. Я использую доступ CDN для jquery javascript-файлов и CSS. Я получаю некоторые данные с сервера и отображаю их в виде списка. Я строю список динамически в файле JavaScript.

Я использовал

$('#detail').html(html);

$('#detail ul').listview();

чтобы обновить мой список после его создания.

Она работала хорошо с альфа-версией jquery mobile, но теперь, не меняя ни единой строки кода, я пытаюсь запустить ее с помощью jquery mobile beta, и она ломается со следующей ошибкой:

Сведения об ошибке веб-страницы

Сообщение: '0' является нулем или не является объектом
Линия: 133
Char: 183
Код: 0
URI: http://user.mydomain.com/scripts/jquery.mobile-1.0b1.min.js

Я что-то не так делаю или проблема с бета-версией файла css?

EDIT:

Я получаю данные в формате json (скажем, объект результата) с помощью вызова ajax и отображаю их так:

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 close tag'

$('div#page2 div#contentMain div#details ul#customerDetails').html(html)
$('div#page2 div#contentMain div#details ul').listview();

Хотя я вижу, что данные отображаются и отображаются правильно, НО без стиля.

Надеюсь, это поможет понять проблему.

комбинационное * * 1 035

Ответы [ 2 ]

0 голосов
/ 27 июля 2011

Я проверил это на форуме Jquery Mobile, и у меня работает следующее решение.

     $('#details').html(html)
     $('#page2').page();
     $('ul#customerDetails').listview('refresh');
0 голосов
/ 26 июля 2011

В ваших примерах вы делаете

$('div#page2 div#contentMain div#details ul#customerDetails').html(html)
$('div#page2 div#contentMain div#details ul').listview();

Но id являются уникальными, поэтому нет смысла использовать несколько идентификаторов для определения иерархии ..

Просто используйте

$('#customerDetails').html(html);
$('#details ul').listview();

Также убедитесь, что вы исправили свои конкатенации строк ... и что result.Data содержит то, что, как вы думаете, делает ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...