У меня есть проблема с PhoneGap и jQuery Mobile, когда событие запускается дважды в bookdetailpage(bookdetailpage.html
) в моем приложении. Когда я устанавливаю флажок, событие запускается и выполняется некоторое обновление веб-службы. (updateBooksInMybooks()
вкод)
Я хочу только установить флажок, и обновление должно выполняться в фоновом режиме, флажок Ничто больше. Если флажок установлен, то он должен оставаться как есть, или, если это не так, он должен быть снят (как обычно,).
Но когда я нажимаю / проверяю флажок, кажется, что он работает правильно, но событие запускается дважды.
- Первый раз (как и должно быть), когда вы нажимаете / проверяетефлажок.
- Во второй раз он срабатывает снова, когда я нажимаю / нажимаю в любом месте экрана.
Это как будто зависает и ждет нового щелчка / касания на экране, такон может снова выстрелить.
Вот код:
...
<div data-role="page" data-theme="c" id="detailpage" data-url="detailpage.html">
<div data-role="header" id="hdrBokDetaljer" name="hdrBokDetaljer" data-theme="c" >
...
</div>
<div data-role="content" id="contentBokDetaljer" name="contentBokDetaljer" >
...
<div id="detailmybooks">
<fieldset id="mybooksGroup" data-role="controlgroup">
<input type="checkbox" name="checkInMybooks" id="checkInMybooks" class="custom" />
<label for="checkInMybooks">My books</label>
</fieldset>
</div>
</div>
<div data-role="footer" id="ftrBokDetaljer" name="ftrBokDetaljer" ></div>
<script type="text/javascript" charset="utf-8">
$(document).delegate('#detailpage', 'pagecreate', function () {
$('#checkInMybooks').attr("checked", detailCheckboxVar);
});
$('#checkInMybooks').change(function () {
//event.preventDefault();
updateBooksInMybooks($('#detailbookid').html());
return false;
});
</script>
</div>
...