我在 JS 文件中有一个 JavaScript 函数
$(document).ready(function() {
$.ajax({
url: 'https://swapi.co/api/people/1/?format=json',
type: 'GET',
dataType: 'JSON',
success: function(json) {
//console.log(json.name);
$("h2.name").text(json.name);
}
});
$.ajax({
url: 'https://swapi.co/api/people/?format=json',
type: 'GET',
dataType: 'JSON',
success: function(per) {
for (var i = 0; i < 6; i++) {
var a = $("<div onclick='data2('ddddd')' class='col-md-4'>" + per.results[i].name + "</div>");
$(".row").append(a);
//console.log(per.results[i].name);
}
}
});
});
function data2(nom) {
console.log(nom);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="navbar navbar-dark bg-dark">
<li class="nav-item">
<a class="nav-link active" href="index.html">Accueil</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Start Wars</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Nous</a>
</li>
<li class="nav-item">
<a class="nav-link disabled" href="#">Contact</a>
</li>
</ul>
<!--images banner-->
<div class="text-center">
<img src="images/stw.jpg" class="img-fluid" alt="Responsive image">
</div>
<div class="alert alert-dark text-center" role="alert">
<h2 class="name mb-0">Loading...</h2>
</div>
<div class="row">
</div>
</div>
我希望每次在使用 jQuery 创建的data2
单击时执行该函数。div
但是当我点击我得到这个错误:
Uncaught SyntaxError: Unexpected token }
在功能行data2
中。
问题出在这一行的引号中:
具体来说,在
onclick
. 如果您注意到,onclick
用单引号打开,'
这也用于传递给的文本字符串data2
。一种解决方案是将开始和结束单引号更改为转义双引号\"
,它会起作用: