.html()不显示JSON数据
制作一个简单的点赞功能出现点赞数无法显示问题
关键的问题出在以下代码中
jquery代码部分
function selected() {
$("span[id='like']").css("color","black");
$.ajax({
url:"like",
data:{"ulike":0},
type:"post",
dataType:"JSON",
success:function (rs){
$("button[name='like']").val(0);
$("#sumLike").html(rs.sumLike);
},
error:function (rs) {
alert(rs.sumLike);
}
})
}
html代码部分
<div>
<button type="button" name="like" value="${userLike}">
<span id="like">
❤ //点赞爱心符号和空格符号
</span>
<span id="sumLike">
${likes} //显示点赞数
</span>
</button>
</div>
经过排查发现问题出在jquery以下这行代码中
$("#sumLike").html(rs.sumLike);
网上有很多建议但是尝试无效或者很麻烦,
可能你需要’console.log’之前的’JSON.parse(data)’。 – 31piy
不需要解析他有’dataType:‘json’,’ – guradio
你确定数据没有绑定到你的div,我认为这个问题是标签隐藏在某处 – Rahul
通过网上查询和实验
只需要做出如下修改即可:
var s=rs.sunLike;
$("#sumLike").html(s);
只要添加一个变量把JSON赋值然后放在.html()方法中即可
我认为应该是.html()不能做嵌套,无法解析出括号中的JSON数据所以导致无法显示