我有几个页面定义如下:
<div data-role="page" id="home">
...
</div>
<div data-role="page" id="settings">
...
<button id="testSettingsButton">Test</button>
</div>
javascript看起来像这样:
$(document).on("touchend", "#testSettingsButton", function(e) {
try {
// connect to remote database
// an error is thrown and caught by the db library code
} catch (err) {
// not reached
}
});
当用户点击Test
按钮时,jquery mobile会显示home
屏幕,而不是停留在setting
屏幕上。
为什么会这样?我该如何修复或调试它?
我在Cordova 4.1.2上使用Jquery Mobile 1.4.5。
答案 0 :(得分:0)
解决方案非常简单 - 我忘记将e.preventDefault();
添加到方法中。添加此项修复了问题。
$(document).on("touchend", "#testSettingsButton", function(e) {
e.preventDefault();
try {
// connect to remote database
// an error is thrown and caught by the db library code
} catch (err) {
// not reached
}
});