我有这样的json格式的数据
{
feild: ...
...
"transport_details": [
{
"allotment_id": ObjectId("5b755710d2ccda0978005d6e"),
"status": "Active"
},
{
"allotment_id": ObjectId("5b755710d2ccda0978005d6e"),
"status": "Inactive"
}
]
}
我已经在Java脚本函数下面编写了
function checkIfInActive(transportAllotment, id)
{
if (transportAllotment.length == 0)
{
return '<div class="checkbox checkbox-success">' +
'<input class="commoncheckbox" type="checkbox" id="studentId_-' + id + '' +
'" name="studentId_-' + id + '" value="' + id+ '"' +' >' + '<label></label></div>';
}
else
{
var max = transportAllotment.length-1;
var status = transportAllotment[max]["status"];
if(status != "Active")
{
return '<div class="checkbox checkbox-success">' +
'<input class="commoncheckbox" type="checkbox" id="studentId_-' + id + '' +
'" name="studentId_-' + id + '" value="' + id+ '"' +' >' + '<label></label></div>';
}
else
{
return '<div class="checkbox"><input class="disabled-check" type="checkbox" disabled><label></label></div>';
}
}
}
如果子数组transport_details的最后一个元素的状态为Inactive,我正在尝试使用commoncheckbox类返回html。在这种情况下,以上方法不会返回带有class commoncheckbox的复选框。
请帮助!!!
答案 0 :(得分:1)
如果状态为非活动状态,它将进入此块内。
似乎当前的html文字有些混乱。您可以使用以反引号(`)开头的template literals
避免与引号混淆
if (status != "Active") {
return `<div class="checkbox checkbox-success">
<input class="commoncheckbox" type="checkbox" id="studentId_${id}"
name="studentId_-${id}"
value="${id}">
<label></label>
</div>`;
}
答案 1 :(得分:1)
var myObj = {
"aaa":"zzzz",
"bbb":23,
"transport_details":[
{
"status": "Active"
},
{
"status": "Inactive"
}
]
}
var status = myObj.transport_details[myObj.transport_details.length - 1].status;
var html = (status === "Active")? '<input type="checkbox">' : '<input type="checkbox" disabled>' ;
$('#banner-message').html(html);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<div id="banner-message">
</div>