Accent / PHP / Javascript / uncatch SyntaxError 意外标识符
Accent / PHP / Javascript / Uncaught SyntaxError Unexpected Identifier
我的PHP/JavaScript和口音有问题。当我给出一个包含重音的变量时,JavaScript 的控制台说:未捕获的语法错误意外标识符。
.PHP:
foreach($credit as $k => $v)
{
$id = $credit[$k]->id_credit;
$nom = $credit[$k]->nom_credit;
$prix = $credit[$k]->prix_credit;
echo "<a onClick='modification(".$id.",".$nom.",".$prix.");'>" . Image::resize('images/credit/' . $credit[$k]->id_credit . "." . $credit[$k]->format_image_credit,100,100) . "</a>";
}
JavaScript:
function modification(id,nom,prix)
{
var div = document.getElementById('modifCredit').style.display = 'block';
alert(id + " " + nom + " " + prix);
}
没有$nom
,一切都有效。如果我替换:
$nom = $credit[$k]->nom_credit;
由:
$nom = "example";
我得到了 :
未捕获的引用错误:未定义示例。
我认为你的php代码会产生类似的东西
<a onClick='modification(3, example, 25);'>
这使得 JavaScript 解释器相信"example"是变量的名称。您需要将其括在引号中,以便javascript将其解释为字符串。
<a onClick='modification(3, "example", 25);'>
我假设$id和$prix总是数字,数字不应该被引号,也不会作为变量名称出现在javascript解释器中。
当$nom包含重音符号时收到不同错误消息的原因是,带有重音符号的变量名称无效,并且解释器在发现变量未定义之前发现无效的标识符。
我认为问题是JavaScript找不到具有"示例"名称的变量,请尝试
$nom ="示例";
相关文章:
- 未捕获的SyntaxError:具有服务器变量的意外标识符
- Chrome 的 Javascript 控制台中的意外标识符
- AngularJS:POST $http意外标识符
- jQuery.ajax Uncatch SyntaxError: 意外标识符
- Ajax响应成功,但无法使用数据(未捕获语法错误:意外标识符)
- 一个javascript函数导致“;意外标识符”;来自不同函数的错误
- 未捕获的语法错误:if/else上的意外标识符
- 使用带有es6的文件时,服务器端SyntaxError意外标识符
- 书签时 JavaScript 意外标识符
- 输入标记的意外标识符
- JavaScript + PHP 未捕获的语法错误意外标识符
- 未捕获的语法错误:带有 .append() 字符串的意外标识符
- 意外标识符每日奖励功能
- 未捕获的语法错误:Java 中使用 Grails 的意外标识符
- 尝试使用 javascript/jQuery 插入 HTML 时出现意外标识符
- jquery 中的“未捕获语法错误:意外标识符”错误
- 意外标识符 javascript
- JSON href .append 意外标识符
- 函数调用的意外标识符
- 浮点:系列是选项中的意外标识符