0

このjson文字列をjavascript配列に変換するのに助けが必要です。

私はこのようなことを試しました:

var cityState = $.map(source, function (value) { return value; });

ここで、「source」はこのajax呼び出しの結果です。

$.ajax({
    url: 'http://localhost:49858/Default.aspx/getstuff',
    dataType: 'json',
    type: "POST",
    data: "{}",
    contentType: "application/json; charset=utf-8"
}).done(function (source) { ...

しかし、それは正しく機能していません。

 {"query": "Unit","suggestions":[{"value":"FAIRFIELD, CONNECTICUT","data":"FAIRFIELD, CONNECTICUT"},{"value":"LONG BEACH, CALIFORNIA","data":"LONG BEACH, CALIFORNIA"},{"value":"NEW YORK, NEW YORK","data":"NEW YORK, NEW YORK"},{"value":"HONOLULU, HAWAII","data":"HONOLULU, HAWAII"},{"value":"KANSAS CITY, MISSOURI","data":"KANSAS CITY, MISSOURI"},{"value":"SAN JOSE, CALIFORNIA","data":"SAN JOSE, CALIFORNIA"},{"value":"SOUTH LAKE TAHOE, CALIFORNIA","data":"SOUTH LAKE TAHOE, CALIFORNIA"},{"value":"LAKE DALLAS, TEXAS","data":"LAKE DALLAS, TEXAS"},{"value":"BROOMFIELD, COLORADO","data":"BROOMFIELD, COLORADO"},{"value":"BROOMFIELD, COLORADO","data":"BROOMFIELD, COLORADO"}]}

console.log(ソース)のスクリーンショットは次のとおりです。 ここに画像の説明を入力してください

4

1 に答える 1

2

これは奇妙なオブジェクトです。一部のオブジェクトを JSON としてエンコードし、それをオブジェクトのプロパティの値として設定してから、再度エンコードしたようです。

valueすべての配列の配列を取得したい場合はsuggestions、そうすることができます

var values = $.map(JSON.parse(source.d).suggestions, function(v){ return v.value });
于 2013-02-28T20:44:03.203 に答える