javascript - 无法使用Ajax调用返回的json数据创建select元素

标签 javascript jquery ajax json

我正在进行ajax调用以检索一些JSON对象。我说对了。但是问题是当我想从返回的JSON创建一个select元素时,它没有创建一个元素,或者似乎没有。

到目前为止,我的JavaScript:

jQuery("#make").change(function () {
    var value = $(this).val();
    jQuery.getJSON("<?php echo site_url('ajax/get/models'); ?>", {
        makeId: value
    },

    function (data) {
        if (data != "false") {
            var modelsSelect = jQuery.createElement('select');
            var modelsOptions = "";
            var id;
            var model
            jQuery.each(data, function () {
                jQuery.each(this, function (key, value) {
                    if (key == "id") {
                        id = value;
                    } else {
                        model = value;
                    }
                });
                modelsOptions += "<option value=" + id + ">" + model + "</option>"
            });
            modelsSelect.innerHTML = modelsOptions;
            jQuery("#model").html = modelsSelect;
        } else {
            alert("false");
        }
    });
});


我返回的JSON格式:

Object { id="28", model="test model"}


ajax调用返回的响应中可能有n个JSON对象。

最佳答案

jQuery中没有createElement方法

jQuery.createElement应该是document.createElement



同样也不需要遍历对象的属性,您可以直接通过键访问它们

jQuery.each(data, function (index, item) {
    modelsOptions += "<option value=" + item.id + ">" + item.model + "</option>"
});

关于javascript - 无法使用Ajax调用返回的json数据创建select元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19877077/

相关文章:

javascript - 我们如何信任 npm 模块?

javascript - 问题获取Rss feed ionic 2

javascript - WebSocket 发送有关连接的额外信息

jquery 工具 : Calling doc ready initialization in script loaded by ajax

Javascript - 使用 2 选择访问数组元素

javascript - 使用jQuery单击文本时如何更改其颜色?

jQuery 子选择器未按预期工作

javascript - React - 控制对服务器的 AJAX 调用

javascript - 我应该如何创建两个对象来执行两个不同的ajax调用?

javascript - 如果两个字段均为空,则检查密码匹配将返回“密码匹配”