jQueryMobile将单击事件添加到按钮而不是更改页面

VERIFY

我正在使用上面的代码,这是一个带有onClick()设置的jQM按钮。 调用onclick并执行doSomething()但在此之后,jQM显示“错误加载页面”消息。

我该如何压制错误? 在这种情况下,我想要jQM按钮,但不希望它改变页面。

谢谢

由于您使用的是jQuery,我建议您使用jQuery来连接您的事件。 据说使用e.preventDefault();e.stopImmediatePropagation(); 应该阻止jQuery mobile执行上的默认操作。

 $("#verify").click(function (e) { e.stopImmediatePropagation(); e.preventDefault(); //Do important stuff.... }); 

更新

使用现有标记的更好方法是简单地将rel="external"添加到您的并且您的onclick应该正常运行。

 

VERIFY

这将起作用,因为jQuery Mobile会将链接视为正常的标记,返回false将仅停止默认操作。

我认为您的问题是您的按钮上有多个操作并且正在使用锚标记。 单击按钮时,您将调用页面以转换为https://stackoverflow.com/questions/5676258/jquerymobile-add-click-event-to-a-button-instead-of-changing-page/index.html和onClick事件。

  <-- Click event VERIFY  

可能会尝试(可能需要删除/添加一些其他属性)

  

现在添加一个点击事件

 $('#verify').click(function() { alert('Button has been clicked'); }); 

实例: http : //jsfiddle.net/vRr82/2/

我认为你应该在锚标签中追加data-ajax="false" ..因为在jQuery mobile中,页面转换是由AJAX完成的,对于页面转换,它必须是false。

使用Jquery live函数。 这对我来说非常有用