1

这是一个用户登录屏幕,当登录成功时我想显示另一个页面,这个“有点”工作但成功登录后我得到了两个页面的混合!这一切都被覆盖了。所以只有当我刷新页面时,我才能正确看到它。我也尝试使用 jQuery 版本 1.6.4 但没有帮助。

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="js/custom.js"></script>
<script src="//code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"></script>

<script>
   $.ajax({
   ...
   success: function (data){ 

      $.mobile.changePage('account.html'); 
 },
    });
</script>

此外,除了下一页上的覆盖问题外,还有一个 JavaScript 代码在我刷新页面之前不起作用。

  $(document).ready(function() {

    $(".infoBasic").click(function() {
     $(this).next('.infoDetails').slideToggle("50");
 });

}); 
4

2 回答 2

1

这里有几个问题:

jQuery Mobile 1.1 仅适用于核心 jQuery verysions 1.6.4 和 1.7.1,而 Mobile 1.2 适用于核心 1.7.0 和 1.8.2

$(document).ready()不支持。改为使用$(document).bind('pageinit')http://jquerymobile.com/demos/1.2.0/docs/api/events.html

您的脚本引用不应以//但开头http://

于 2013-01-09T16:02:05.200 回答
0

我认为你可以这样做:

$.ajax({
    ...
    success : function(data) {
        $('body').empty();
        $.mobile.changePage('account.html');
    },
});

对于您的第二个问题,您应该将委托与 .on() 一起使用:

$(document).ready(function() {

    $(this).on('click',".infoBasic",function() {
        $(this).next('.infoDetails').slideToggle("50");
    });

});
于 2013-01-09T13:40:47.503 回答