在ajax响应中,我尝试根据AJAX响应创建动态单选按钮。
success: function(data) {
var obj = data.result;
html = '';
html += '<div >';
$.each(obj, function(i, val) {
html += '<input type="radio" name=' + val.id + '><label class="">Yes</label>';
})
html += '</div>';
$('#where_toadd').html(html);
}
对于响应中的每个val
,我想生成一个HTML结构,如AJAX处理程序所示。如果该项目的Yes
出现在逗号分隔的字符串data.id
中,则必须选中标签为val.checked
的复选框。我怎么能这样做?
答案 0 :(得分:1)
我在这里做了两处改动
success: function(data) {
var obj = data.result;
html = '';
html += '<div class="form-group">';
$.each(obj, function(i, val) {
html += '<input type="radio" name=' + val.id + ' '+((val.checked || '').split(',').indexOf(`${val.id}`) !== -1 ? 'checked' : '')+'><label class="">Yes</label>';
})
html += '</div>';
$('#ids').html(html);
答案 1 :(得分:0)
执行此操作的一种方法是在checked
为真时插入val.checked
属性。
function success(data) {
var obj = data.result;
html = '';
html += '<div class="form-group">';
$.each(obj, function (i, val) {
html += '<input type="radio" name="' + val.id +'" '+ (val.checked.spilt(',').indexOf(""+val.id) > -1? 'checked':'') +'><label class="">Yes</label>';
})
html += '</div>';
$('#ids').html(html);
}