2

私はJsonとJqueryが初めてです。

今日、私はこの小さなコードを作成しましたが、機能しません。私はそれを正しく書いたと思いますが、どこかに小さな間違いがあることを知っています。それを理解するのを手伝ってもらえますか?

    <!doctype html>
    <html lang="en">
    <head>
    <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
    </head>

    <script>

    $(document).ready(function () {

    $(":button").click(function(){

     var add = $("#destination").val();

    $.getJSON("http://maps.googleapis.com/maps/api/geocode/json?address= + add   +&sensor=false", function (data) {
        var output = "<ul>";


            output += "<li>"+ results.geometry.location.lat + " " + results.geometry.location.lng  + "</li>";
            output += "</ul>";

        document.getElementById("placeholder").innerHTML = output;
    });
    });
});
    </script>
    <body>

    <input type="text"  id="destination" /><button type="button">Search</button><br>
    <div id="placeholder"> </div>
</body>

</html>
4

3 に答える 3

2

修理済み。results は配列であることに注意してください。

<script>

$(document).ready(function () {

$(":button").click(function(){

 var add = $("#destination").val();

$.getJSON("http://maps.googleapis.com/maps/api/geocode/json?address= + add   +&sensor=false", function (data) {
    var output = "<ul>";


        output += "<li>"+ data.results[0].geometry.location.lat + " " + data.results[0].geometry.location.lng  + "</li>";
        output += "</ul>";

    document.getElementById("placeholder").innerHTML = output;
});
});

});

<input type="text"  id="destination" /><button type="button">Search</button><br>
<div id="placeholder"> </div>

于 2013-08-04T07:35:59.577 に答える
0

URLに誤りがあると思われます。おそらく次のようになります。

"http://maps.googleapis.com/maps/api/geocode/json?address="+add+"&sensor=false"

なぜならadd、以前に定義された変数だからです。

それ以外にも行う必要があります(jQueryを使用しているため):

$("#placeholder").html(output);

それ以外の

document.getElementById("placeholder").innerHTML = output;

そして最後に(@pixelcdvで指摘されているように)おそらく必要です

$.getJSON(..., function (results) {

resultsではなく、後で使用するためですdata

于 2013-08-04T07:32:28.520 に答える
0

要素名を参照しているため、jquery セレクターにコロンは必要ありません。

$("button")

フリークが述べたように、URL 文字列を作成するときは、「+」を使用して文字列を連結する前に引用符を閉じる必要があります。

配列を取得していることがわかります。涼しい。

ご覧になりたい場合は、フィドルを作成しました。json リクエストを作成し、ブラウザーで注意深く調べると (Chrome は json を適切にレンダリングします)、大いに役立ちます。

jsfiddle での私のソリューション

于 2013-08-04T07:53:00.603 に答える