未捕获的引用错误使用外部脚本&jQuery移动
Uncaught ReferenceError using external script & jQuery Mobile
我正在尝试创建一个web应用程序,但不能让我的javascript工作。
当加载一个新启动的浏览器页面时,我得到'未捕获的ReferenceError: getResult未定义'(位于js/ajax.js),但当我刷新页面时,一切都有效。我试图移动脚本加载发生的地方,但我不能让它工作。
我发现了一堆类似的问题,但他们似乎建议在里面加载脚本,而不是使用$(document).ready(),我已经这样做了。有人知道吗?
编辑:我注意到这个错误只发生在从另一个jQuery移动页面。
index . html
<!DOCTYPE html>
<html>
<head>
<title>sio.signalare.se</title>
<meta content="width=device-width, user-scalable=no" name="viewport">
<meta content="yes" name="apple-mobile-web-app-capable">
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.3/jquery.mobile-1.4.3.min.css" />
<script src="js/ajax.js"></script>
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.4.3/jquery.mobile-1.4.3.min.js"></script>
<style>
.wrap {
white-space: normal !important;
}
</style>
</head>
<body>
<div data-role="page">
<div data-role="header">
<a class="ui-btn-left" data-direction="reverse" data-icon="back"
data-iconpos="notext" href="../"></a>
<h1>ATC-felkoder</h1>
</div><!-- /header -->
<div data-role="content">
<ul data-inset="true" data-role="listview">
<li>
<h2 class="wrap">F1</h2>
<p class="wrap"><strong id="F1-result"></strong></p>
<select id="F1" onchange="getResult(this);">
<option value="" selected>Välj</option>
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="A">A</option>
<option value="C">C</option>
<option value="E">E</option>
<option value="F">F</option>
<option value="H">H</option>
<option value="L">L</option>
<option value="P">P</option>
<option value="U">U</option>
</select>
</li>
</ul>
<h6>Version 2.0</h6>
</div><!-- /content -->
</div><!-- /page -->
</body>
</html>
js/ajax.js function getResult(e) {
if (e.value) {
var ajax_load = "<img src='img/loader.gif' alt='loading...' />";
var loadUrl = "data/result.php?args=" + e.id + "|" + e.value;
$("#" + e.id + "-result").load(loadUrl);
} else {
$("#" + e.id + "-result").empty();
}
}
;使用jQuery Mobile时,TLDR: <head>
在内部页面上被忽略。
使用jQuery移动与外部样式和脚本,你将不得不加载相同的脚本和样式的每一个页面,根据文档
相关文章:
- 如何在运行时在angular 2中加载外部js脚本
- 是否可以通过Chrome扩展内容脚本打开Chrome外部协议请求
- 建议将包含不同参数的内联JS转换为外部脚本
- 加载Angular视图后加载外部脚本
- 如何获取外部脚本的内容
- 是否有用于加载外部脚本的JavaScript库
- Chrome审核:在外部CSS文件之间的头中发现了1个内联脚本块&”;
- 我的代码在<脚本>标记,但没有'不能在外部文件中工作
- Javascript:是否可以读取外部脚本的原始代码
- 从外部 js 脚本创建元素并插入到 html 中
- 将参数传递到外部 JS 脚本的最佳方法
- 不评估动态加载的外部脚本
- 外部脚本可以在Schematron规则中使用吗
- Ajax和外部JS脚本
- 在Ember应用程序中加载外部域脚本
- Kinetic JS无法从外部脚本文件中工作
- 谷歌应用程序脚本:如何使用电子表格中的数据查询外部数据库
- JavaScript - 是否可以修改第三方脚本(外部托管)使用的 setInterval/setTimeout 的行为
- javascript函数从编写的脚本外部调用是安全的吗?
- 从脚本外部调用内部铯函数