ajax - 为什么 Javascript 在 changePage 后不工作

标签 ajax jquery-mobile

当我更改页面时,javascript 没有执行。

index.html

$("#login").submit(function(e){
e.preventDefault(); 
$.mobile.changePage('main.html', {
    reverse : false,
    changeHash : false,
    allowSamePageTransition : true,
    reloadPage:true,
    transition: "flow"
});
});

main.html

<script type="text/javascript">
    $(document).ready(function () {
        alert("Test");
    });
</script>

main.html 中的上述 javascript 不会在页面更改时执行;谁能解释这是为什么以及如何解决?

最佳答案

这是因为更改页面会导致页面重新加载,而 JQM 没有在 DOM 中获取最近加载页面的头部,因此 <head> 中的任何脚本文档的一部分将不包括在内。

因此,您可以将所有 JS 放入一个外部文件中,并将其包含在您需要的站点的每个 HTML 页面中。

您还可以将 JavaScript 代码放在 data-role="page" 中元素和你的 JS 将被包含在内。

关于ajax - 为什么 Javascript 在 changePage 后不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22030153/

相关文章:

java - Spring MVC中无法通过ajax调用绑定(bind)ModelMap

php - 使用 ajax 向数据库添加恰好 100 个值

javascript - Express:router.post 和 router.get 之间共享逻辑

jQuery Mobile 可折叠集,一次打开多个?

javascript - Ajax 登录仅刷新记录的 div

javascript - Django 和 Ajax - 提交表单集

javascript - jQueryMobile 不会在 Android 上加载 Phonegap

javascript - jquery 移动可折叠 ListView 不适用于 li 标签

javascript - 使用 jQuery Mobile 风格动态添加文本框

android - 转换期间 jQuery Mobile 屏幕闪烁