javascript - jQuery-mobile 和 ASP.NET 组合问题

标签 javascript asp.net jquery jquery-mobile

我正在开发一个结合 jQuery.mobile 和 asp.net 网络表单。

为了使我的 asp.net 控件的回发正常工作,我必须禁用 ajax 页面顶部,如下所示:

   <script>
      $.mobile.ajaxEnabled = false;
   </script>

但是当像这样禁用ajax时,其他功能似乎不起作用。 我无法从 jQuery 文档中调用对话框/弹出窗口

例如:

  $(document).ready(function () {        
     $('#myPopup').popup('open'); 
  });

这只会导致弹出窗口在不到一秒的时间内显示, 然后它就消失了。另外当我注册客户端脚本时 从代码隐藏中触发服务器端按钮时的弹出窗口 单击后,弹出窗口会闪烁,然后消失。 但是当我在页面顶部禁用ajax时,弹出窗口 通话效果很好。

有什么想法可以解决这些问题吗?

最佳答案

文档就绪无法成功与 jQuery Mobile 一起使用。它通常会在页面 DOM 填充之前触发。

而不是这一行:

$(document).ready(function () {        
    $('#myPopup').popup('open'); 
});

使用这一行:

$(document).on('pagebeforeshow', '#page-id', function(){       
    $('#myPopup').popup('open'); 
});

其中#page-id是包含该弹出窗口的页面的ID。

jQuery Mobile 在文档就绪方面存在问题,因此其开发人员创建了页面事件来解决此问题,请在 ARTICLE 中阅读更多相关信息。 或找到它 HERE

编辑:

我认为您的问题还在于 $.mobile.ajaxEnabled = false; 处理。

该代码示例必须mobileinit事件触发,如下所示:

$(document).bind("mobileinit", function () {
    $.mobile.ajaxEnabled = false;
});

还有一件事,mobileinit事件必须jQuery Mobile之前触发已初始化,如下所示:

<script src="http://www.dragan-gaic.info/js/jquery-1.8.2.min.js"></script>      
<script>
        $(document).bind("mobileinit", function () {
            $.mobile.ajaxEnabled = false;
        });    
</script>
<script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>  

关于javascript - jQuery-mobile 和 ASP.NET 组合问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15405606/

相关文章:

javascript - 如何从executeJavaScript获取返回值

asp.net - 什么是用于性能测试网页/网站的好工具或网站?

asp.net - 使用ASP.NET将文件从服务器发送到客户端

javascript - 调用窗口模糊时避免元素模糊处理程序(浏览器失去焦点)

javascript - jquery:未捕获类型错误:非法调用

javascript - 如何使按钮像 jQuery 中的切换一样工作

javascript - 来自变量的 Ionic3 背景图像

asp.net - .ascx 中的条件 javascript

javascript - 阅读ckeditor内容

jquery - 通过下拉菜单创建新的输入字段,如何将新输入限制为每个只有 1 个?