我有一个动态div,它将根据json数据进行更改.我尝试在“for循环”中使用
jquery来控制这个div的内容,但它不起作用?
有人可以给我一些线索和一些如何纠正代码的想法?
有人可以给我一些线索和一些如何纠正代码的想法?
$.ajax({ type: "POST",url: 'http://192.168.12.230/XXXX/XXX',dataType: 'json',contentType: "application/json",success: function (data) { console.log(data); var projectList = "<ul style='list-style:none;'>" for (var i = 0; i < data.d.length; i++) { projectList += "<li>" + "<div class='location'>" + "<p>Sounth Africa</p>" + "</div>" + "<div class='status'>" + "<div class='status_circle'></div>" + "<p>in raising</p>" + "</div>" + "</li>" $(".category p").append(data.data[i].categoryName); if (data.data[i].raisingStatus == 1) { $(".status p").html("in raising"); $(".status_circle").css("background-color","#32C832"); } else if (data.data[i].raisingStatus == 0) { $(".status p").html("stop raising"); $(".status_circle").css("background-color","#CD3C14"); } } projectList += "</ul>"; $('#projectList').append(projectList); },error: function () { alert("error"); } });
顺便说一下,不是在javascript中导入HTML代码,有没有想法在不使用HTML代码的情况下实现这个功能?
非常感谢:)
解决方法
if (data.data[i].raisingStatus == 1) { $(".status p").html("in raising"); $(".status_circle").css("background-color","#32C832"); } else if (data.data[i].raisingStatus == 0) { $(".status p").html("stop raising"); $(".status_circle").css("background-color","#CD3C14"); }
你不能填充dom $(“.status p”)直到添加到dom.$(‘#projectList’).html(projectList);
if (data.data[i].raisingStatus == 1) { projectList += "<div class='status'>in raising</p>"; var style = "background-color:#32C832"; projectList += "<div class='status_circle' style='"+style+"'></div>"; } else if (data.data[i].raisingStatus == 0) { projectList += "<div class='status'>stop raising</p>"; var style = "background-color:#CD3C14"; projectList += "<div class='status_circle' style='"+style+"'></div>"; }
对于你的第二个问题,是的,所有混乱的html js和css.您可以创建一个html变量,并将其替换为更清晰的代码参数
for (var i = 0; i < data.data.length; i++) { var status = ""; var style = ""; if (data.data[i].raisingStatus == 1) { status = "in raising"; style = "background-color:#32C832"; } else if (data.data[i].raisingStatus == 0) { status = "stop raising"; style = "background-color:#CD3C14"; } var projectList="<li><div class='location'><p>Sounth Africa</p></div><div class='status'> <div class='status_circle' style='{0}'></div><p>{1}</p></div></li>".format(style,status); } String.prototype.format = function() { var formatted = this; for (var i = 0; i < arguments.length; i++) { var regexp = new RegExp('\\{'+i+'\\}','gi'); formatted = formatted.replace(regexp,arguments[i]); } return formatted; };
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。