#javascript #jquery-mobile
#javascript #jquery-мобильный
Вопрос:
Хотя я немного разбираюсь в php, я пробиваюсь через мобильный проект jQuery через Phonegap для приложения iOS. Итак, разобраться в javascript (быстро) было непросто. Удалось решить большинство проблем в основном с помощью здешних добрых людей, поэтому я подумал, что задам этот вопрос, для которого я не могу найти решение.
У меня есть список, который генерируется из запроса ajax (сводка с заголовком и кратким описанием), причем полная информация хранится в базе данных SQLite для автономного использования. Я хочу открыть диалоговое окно с полной детализацией по щелчку. Диалоговое окно JQM data-rel является простым для статических страниц, но я не могу найти способ отправить диалоговой странице параметр индекса для извлечения данных из базы данных. Как только я переведу параметр на «страницу», я довольно уверенно извлекаю данные и заменяю элементы DOM, поэтому короткий вопрос заключается в том, как мне отправить параметр индекса из списка на страницу диалога?
Заранее огромное спасибо!
Ответ №1:
Вы можете в своем списке (я предполагаю data-role="listview"
здесь) создавать ссылки, представляющие интерактивные элементы:
<ul data-role="listview">
<li>
<a href="dialog.html?id=someId" data-rel="dialog">Show details</a>
</li>
</ul>
куда вы вставляете someId
динамически при создании своего списка.
На странице диалога вы анализируете свой URL и получаете идентификатор.
Обновить
Следующее подтверждено как работающее в Safari (на моем рабочем столе):
<a href="dialog.html?id=someId" data-rel="dialog">Show details</a>
и использование было бы:
$.mobile.path.parseUrl($(this).data('url')).search
которое будет содержать следующую строку:
?id=someId
Комментарии:
1. Это то, что я думал, но в Safari он не отправляет параметр. URL-адрес является составным.html#награды и состояние пользовательского интерфейса = диалоговое окно, где composite.html это целая страница, а accolades — страница со списком, вызывающая диалоговое окно. Итак, нет параметра для получения. Диалоговое окно отображается как и должно, но разделы пусты.
2. Это странно, извините, но я смогу протестировать это завтра. Я постараюсь вернуться к вам.
3. Спасибо ZenMaster, высоко ценится.
4. Спасибо ZenMaster, который сделал это. Для любых других новичков, которые сталкиваются с этим, он возвращает все это, то есть ‘?id=someId’, а не только ‘someId’. Мне нужно было целое число, поэтому я использовал finalid = parseInt(id.slice(id.indexOf(‘=’) 1)); Еще раз спасибо.