0

javascriptコードに問題があります。私はグーグルマップを使用していて、サーバーからjson形式でデータトラフを収集しています。一部のブラウザのコンソールウィンドウでデータを確認すると、データが実際に送信されていることがわかります。

私の問題は、変数が1回読み取られ、その値がテキストボックスに表示されていることです。今、私がデータ変数を受け取り続けるときは常に同じですが、なぜですか?そして、私は異なる値を取得していると100%確信しています。

コードは次のとおりです。

function updateTrucks() {
    $.ajax({
        url: "get_data.php",
        cache: false,
        dataType: 'json',
        data: {},
        error: function(jqxhr, textStatus, errorThrown) {
            alert("Error: " + textStatus + " " + errorThrown);
        },
        success: function(data) {
        for(var i = 0; i < data.results.length; i++) {
            if(trucks.hasOwnProperty(data.results[i].id)) {
                // update position
                trucks[data.results[i].id].setPosition(new google.maps.LatLng(
                parseFloat(data.results[i].lat),
                parseFloat(data.results[i].lng)));
                trucks[data.results[i].id].speed = data.results[i].speed;
            }
            else {
                // code
            }

            google.maps.event.addListener(trucks[data.results[i].id], 'position_changed', function() {
                if(typeof tracked !== "undefined") {
                    if(this.id == tracked.id) {
                        map.panTo(this.getPosition());
                        $("#speed").val(this.speed);
                    }
                }
            });     

この行は正しく機能していません$("#speed").val(this.speed);

4

2 に答える 2

0

位置を更新するときにコマンドの順序を変更する必要があると思います。そのため、position_changedの起動速度プロパティが更新されると、次のようになります。

if(trucks.hasOwnProperty(data.results[i].id)) {
                trucks[data.results[i].id].speed = data.results[i].speed;
                // update position
                trucks[data.results[i].id].setPosition(new google.maps.LatLng(
                  parseFloat(data.results[i].lat),
                  parseFloat(data.results[i].lng)));
              }
于 2012-06-17T08:56:12.017 に答える
0

JavaScriptでできること

document.getElementById("clicks").innerHTML = stuff;

javascript では var が呼び出されstuff、html では var が呼び出されますclicks

于 2017-04-17T16:17:24.630 に答える