在ajax调用后填充其他选择输入

时间:2016-08-04 11:57:59

标签: javascript jquery ajax

我有一个选择输入。更改后,将触发以下内容

$('#type').change(function() {
    var selectedYear = $("#year option:selected").val();
    var selectedProduct = $("#product option:selected").val();
    var selectedType = $("#type option:selected").val();
    $.ajax({
        type: "get",
        url: "./report",
        data: { 
            year : selectedYear,
            product : selectedProduct,
            type : selectedType
        }
    }).done(function(data){
        var url = $('meta[name="base_url"]').attr('content');

        $('#displayImage').attr('src', '');
        $('#displayImage').attr('src', url + data);
        $('#displayImage').css('display', 'block');
    });
});

它调用的url触发一个函数,该函数基本上用图像路径填充数组。填充图像数组后,我

if(!empty($imageArray)) {
     return $imageArray;
}

现在在我的ajax调用的完成部分中,我显示了图像。如果阵列只有一个图像路径,这可以正常工作。但是,如果数组中有多个图像路径,我需要显示一个额外的选择输入,以便他们可以选择适当的图像。

如何才能实现这样的目标?

由于

1 个答案:

答案 0 :(得分:1)

你需要一个空的<选择>准备好被解开。获得数据后,您可以像这样填充选择 -

$.each($imageArray, function(key, value) {   
 $('#myEmptyAndNowUnhiddenSelect')
     .append($("<option></option>")
     .attr("value",key)
     .text(value)); 
});