我在我的一个百里叶视图中有这部分代码,我通过ajax获取了一些数据:
success: function(data){
data.forEach(function(item){
$('#friends-list').append('<div onclick="selectUserToChat("' + item.id + '\,' + ' \'' +
item.username + ')\'' + '); >' + item.username + '</div>');
});
}
然而,当我尝试运行应用程序时,我收到一个错误,指出元素类型&#34; div&#34;必须遵循属性规范,&#34;&gt;&#34;或&#34; /&gt;&#34;。我该如何处理这个问题?
答案 0 :(得分:1)
您应该使用CDATA
块,因此Thymeleaf不会尝试将您的javascript解释为html。
<script>
// <![CDATA[
// ...
success: function (data) {
data.forEach(function (item) {
$('#friends-list').append('<div onclick="selectUserToChat("' + item.id + '\,' + ' \'' + item.username + ')\'' + '); >' + item.username + '</div>');
});
}
// ...
// ]]>
</script>
答案 1 :(得分:0)
使用双引号,并在字符串内使用\
转义它们:
.append("<div onclick=\"selectUserToChat(\"" + ...