SyntaxError: expected expression, got '<', what does that mean?
SyntaxError: expected expression, got '<', what does that mean?
我知道这个问题在 S.O 上被问过几次。
但 none 的答案似乎符合我的情况。所以,我有一个基本的 Html 页面,它试图使用外部 JS。 JS 文件试图在单击按钮时更改 HTML 中定义的段落的内容,但似乎不起作用。
我在控制台中看到以下错误:
1)SyntaxError: 预期的表达式,得到 '<'
2)ReferenceError: change is not defined
JSFiddle 显示确切来源?(除了 & 标签被删除为 jsfiddle - http://jsfiddle.net/p9ko4yde/
HTML 代码:
<h1> Numbers with external script:) </h1>
<p id="number">1</p>
<button type="button" onclick="change()">Toggle between 1 and 2</button>
<script src="myScript.js"></script>
</body>
</html>
JS代码:
<script type="text/javascript">
function change(){
var number = document.getElementById('number').innerHTML;
if(number == '1'){
document.getElementById('number').innerHTML='2';
}
else{
document.getElementById('number').innerHTML='1';
}
}
</script>
文件结构如下:
在外部 .js 文件中不需要 <script>
标签。使用这些标签仅在 HTML 内嵌入脚本。
在一个js文件中,不要用HTML声明它是一个js文件。因此,您可以将脚本标签放在 myScript 中并将其更改为:
function change(){
var number = document.getElementById('number').innerHTML;
if(number == '1'){
document.getElementById('number').innerHTML='2';
}
else{
document.getElementById('number').innerHTML='1';
}
}
语法错误是因为你的JS文件中有<script>
个标签。当你把 JavaScript 放在它自己的文件中时,你不需要用脚本标签包围它;那是 HTML,这是一个 JavaScript 文件。
发生引用错误是因为,由于语法错误,JS 文件未正确执行,因此从未创建更改函数——修复语法错误也应该可以解决此问题。
有时,当 Javascript 引用的 文件不存在 时,会发生此错误。确保文件名正确并且文件就位。我知道您的问题已解决,但也许这个答案解决了其他人的问题:)
我知道这个问题在 S.O 上被问过几次。
但 none 的答案似乎符合我的情况。所以,我有一个基本的 Html 页面,它试图使用外部 JS。 JS 文件试图在单击按钮时更改 HTML 中定义的段落的内容,但似乎不起作用。
我在控制台中看到以下错误:
1)SyntaxError: 预期的表达式,得到 '<'
2)ReferenceError: change is not defined
JSFiddle 显示确切来源?(除了 & 标签被删除为 jsfiddle - http://jsfiddle.net/p9ko4yde/
HTML 代码:
<h1> Numbers with external script:) </h1>
<p id="number">1</p>
<button type="button" onclick="change()">Toggle between 1 and 2</button>
<script src="myScript.js"></script>
</body>
</html>
JS代码:
<script type="text/javascript">
function change(){
var number = document.getElementById('number').innerHTML;
if(number == '1'){
document.getElementById('number').innerHTML='2';
}
else{
document.getElementById('number').innerHTML='1';
}
}
</script>
文件结构如下:
在外部 .js 文件中不需要 <script>
标签。使用这些标签仅在 HTML 内嵌入脚本。
在一个js文件中,不要用HTML声明它是一个js文件。因此,您可以将脚本标签放在 myScript 中并将其更改为:
function change(){
var number = document.getElementById('number').innerHTML;
if(number == '1'){
document.getElementById('number').innerHTML='2';
}
else{
document.getElementById('number').innerHTML='1';
}
}
语法错误是因为你的JS文件中有<script>
个标签。当你把 JavaScript 放在它自己的文件中时,你不需要用脚本标签包围它;那是 HTML,这是一个 JavaScript 文件。
发生引用错误是因为,由于语法错误,JS 文件未正确执行,因此从未创建更改函数——修复语法错误也应该可以解决此问题。
有时,当 Javascript 引用的 文件不存在 时,会发生此错误。确保文件名正确并且文件就位。我知道您的问题已解决,但也许这个答案解决了其他人的问题:)