我试图在select表中设置动态选项,该表可以根据条件包含任意数量的行。
所以从ajax获取数据并尝试设置但无法这样做
$('#cb_table').on('change', 'select[name="batch_month"]', function() {
var selectedMonth=$(this).val();
var course_id=$(this).closest('tr').find('input[name="course_name[]"]').attr('course-id');
alert(selectedMonth+'abc '+course_id);
$.ajax({
type : "POST",
url : "<?php echo base_url().'Bookings/fetch_course_batches/';?>",
data : {'course' : course_id,'start_date_m' : selectedMonth},
dataType : 'json',
success : function(data) {
var formatted_data='';
$.each(data.message, function (i,val) {
formatted_data+='<option value="'+val['batch_id']+'">'+val['start_date']+' '+val['end_date']+' '+val['batch_time']+'</option>';
});
var data1=$(this).closest('tr').find('select[name="batch_date_time[]"]').val(formatted_data);
}
});
});
答案 0 :(得分:0)
您正在使用 .val()来附加错误的选项。你应该追加像
这样的html$('select').append('<option val="1">First</option>');
所以在你的情况下它将是
var data1=$(this).closest('tr').find('select[name="batch_date_time[]"]').append(formatted_data);