[英]if else in .append based value of field in json to selected a select option html
$(document).on('click', '.bg-maroon', function () {
var id = $(this).val();
$.ajax({
url: "<?= base_url('surveyor/c_surveyor_inspection/get_data_untuk_inspection_surveyor_dua'); ?>",
type: "POST",
data: {
ID: id
},
dataType: 'json',
success: function (response) {
console.log(response);
}
我得到这样的json:
{
"header": [{
"NO_INSPECTION": "55",
"ID_CONDITION": "3",
"NAMA_CONDITION": "CLEAN"
}],
"transaction": [{
"NO_INSPECTION": "55",
"ID_ITEM_INSPECTION": "1",
"NOMOR_ITEM_INSPECTION": "1",
"NAMA_ITEM_INSPECTION": "Protection Box Cover",
"CONDITION": "9",
"ALIAS": "BE",
"NAME_ITEM": "BENT"
}, {
"NO_INSPECTION": "55",
"ID_ITEM_INSPECTION": "2",
"NOMOR_ITEM_INSPECTION": "2a",
"NAMA_ITEM_INSPECTION": "Manhole LID, Fastening Bolts",
"CONDITION": "7",
"ALIAS": "B",
"NAME_ITEM": "BROKEN"
}]
}
请参阅transaction
数组json。 有两个对象将被表示为两行html表。 我与jQuery合作php。 我的问题是,我想根据上面的"ID_ITEM_INSPECTION"
字段来选择选项。 这是将在成功的ajax中添加的jQuery组合php:
$.each(response.transaction, function(i, item){
console.log(response.transaction[i].ID_ITEM_INSPECTION);
$('#list2').find('tbody').append('<tr class="list2_var">' +
'<td>' +
'<select class="form-control" name="list2_item_0" id="list2_name_0">' +
'<option disabled selected>Pilih jenis kerusakan... </option>' +
'<?php
foreach ($top_item->result() as $v) {
echo '<option value =' . $v->ID_ITEM_INSPECTION . ' >' . $v->NOMOR_ITEM_INSPECTION . ' - ' . $v->NAMA_ITEM_INSPECTION . '</option>';
}
?>' +
'</select>' +
'</td>' +
'<td class="del_area04">' +
'<button type="button" class="list2_del btn btn-block btn-danger" style="display: block;"><i class="fa fa-trash-o"></i></button>' +
'</td>' +
'<tr>');
});
因此,条件是,如果response.transaction[i].ID_ITEM_INSPECTION
中的select选项相同,则将选择select中的选项。 可能吗 ? 任何赞赏的帮助
在您的append
函数之后添加以下代码:
$('.form-control option[value="' + response.transaction[i].ID_ITEM_INSPECTION + '"]').prop('selected', true);
在jsFiddle上查看以下示例: https ://jsfiddle.net/gjeaqx9L/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.