我正在通过ajax准备一个<option>
,如下所示:
success: function(data) {
jQuery('#usp-cat-combo-1').prepend('<option selected="selected" value="'+data.cat_id+'">'+data.cat_name+'</option>');
}
问题是,当我提交表格时,该选项显示未选择,我需要手动选择它,即使我在添加时给出了attribute selected
尝试设置<select>
的值,而不是在选项上设置所选属性
jQuery('#usp-cat-combo-1')
.prepend('<option value="'+data.cat_id+'">'+data.cat_name+'</option>');
.val(data.cat_id)
注意,这假设<select>
不是multiple
。如果是倍数,可以在新的第一个子上设置prop('selected',true)
您要做的事情:
定义了要选择的选项默认情况下,如:
var selected;
success: function(data) {
data.cat_id=='1' ? selected = 'selected="selected"' : selected = '';
jQuery('#usp-cat-combo-1').prepend('<option '+selected+' value="'+data.cat_id+'">'+data.cat_name+'</option>');
}
现在,它只需在您定义的一个选项中添加选定属性,而不是在每个选项中添加。
注意:
- 假设数据是数组
- 您可以根据需要使用data.cat_name或其他cat_id来定义您的选定选项
如需更多帮助或其他简化,请随时发表评论:(