数据不在选择字段中迭代

时间:2017-01-02 20:17:15

标签: jquery

我在更改select时发送ajax。

$(document).ready(function()
            {
                $("#city").change(function()
                {
                    var id = $(this).find(':selected')[0].value;
                    $.ajax(
                    {
                        url: '../scripts/get_areas.php',
                        method: 'POST',
                        data: {'city_id':id},
                        success: function(data)
                        {
                            var $area = $('#area');
                            $area.empty();
                            for (var i = 0; i < data.length; i++) 
                            {
                                $area.append('<option value=' + data[i].area_id + '>' + data[i].area + '</option>');
                            }
                        }
                    });
                });
            });

这是我发送数据的方式,它将数据作为

返回
[{"area_id":1,"area":"ABC","area_postal":12345,"city_id":1}]

但它没有附加在select

id="area"

这里有什么问题?它在undefined

上显示<select id="area"></select>

1 个答案:

答案 0 :(得分:0)

可以请将数据响应转换为json对象。使用“jQuery.parseJSON(data)”,在你的for {}中。然后将其附加到<option>