Hello Guys我可以将对象传递给另一个jquery函数,如下所示吗?
$('#course_id').on('change', function(e){
var cour_id = e.target.value;
$.get('/ajax-classification?cour_id=' + cour_id, function(data){
console.log(data);
$('#classification_id').empty();
$('#classification_id').append('<option value="">--Select Classification--</option>');
$.each(data, function(index, classificationObj){
$('#classification_id').append('<option value="'+
classificationObj.classification_id+'">'+
classificationObj.classification_name+'</option>');
});
});
//Here i want this function can get back the classificationObj.
$('#classification_id').on('change', function(e){
var cour_id = "1";
var classi_id = e.target.value;
$.get('/ajax-classification-index?classi_id=' + classi_id +'&cour_id='+ cour_id, function(data1){
console.log(data1);
$('#classification_index').empty();
$('#classification_index').append('<option value="">--Select Index--</option>');
$.each(data1, function(index, classificationIndexObj){
$('#classification_index').append('<option value="">'+
classificationIndexObj.classification_index+'</option>');
});
});
});
});
我该怎么办?如何修改第一个或第二个Jquery函数?
答案 0 :(得分:1)
使用.data()
保存每个选项的对象。
$.each(data, function(index, classificationObj){
$('#classification_id').append($("<option>", {
value: classificationObj.classification_id,
text: classificationObj.classification_name,
data: { object: classificationOBj }
}));
});
然后在#classification_id
更改处理程序中,您可以使用:
var classificationObj = $(this).find("option:selected").data("object");