jquery函数循环两次

时间:2013-09-08 16:08:53

标签: javascript jquery json loops

我的json对象的每个值都被添加到“listOfCountries”两次。我不明白为什么它会循环遍历结果对象两次。任何帮助将不胜感激!

var listOfCountries = []

$(document).ready(function () {

    $.ajax({
        url: '/Json/GetCountries',
        type: 'GET',
        success: function (result) {

            $.each(result, function (name, value) {
                listOfCountries.push(value.Country);
            });

            $("#countriesAutoComplete").kendoAutoComplete(listOfCountries);
        }
    });
});

通过网络发送Json对象:

[{"Country": "United States Of America"},{"Country": "Australia"},{"Country": "Britain"}]

HTML

@{
    Layout = "~/Views/Shared/_Layout.cshtml";
}

<!DOCTYPE html>

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>Index</title>
</head>
<body>
    <div>
       <p>
           Country: <input id="countriesAutoComplete" class="k-input" />
       </p>
    </div>
    <script type="text/javascript" src="~/Scripts/Custom.js"></script>
</body>
</html>

1 个答案:

答案 0 :(得分:2)

每次代码运行时,都会向listOfCountries添加更多字符串 你永远不会从上次删除字符串,因此全局数组不断增长。

你可能不应该把它变成一个全局变量。