0

選択イベント時に ajax 関数を実行しようとしています。基本的に、指定された入力に基づいて場所のドロップダウン リストを提供する Google Maps API 接続があります。ユーザーが結果リストから値を選択するときは、ajax 関数を実行する必要があります。基本的なタスク: Google Maps API から指定された座標でデータベース内の結果を検索します。

何らかの理由でこれを機能させることができません。スクリプトに到達すると、readyState が 4 になり、ステータスが 200 になります。何か提案はありますか?

$('#SearchIn').autocomplete({
    source: // my google maps implementation (which works correctly),

    select: function(event, ui){
        $(this).autocomplete('close');
        $(this).val(ui.item.value);

        $.ajax({
            url:        ABS_BASE + 'ajax/ajax-get-results-from-location.php?data=123',
            success:    function(result) {
                            console.log('success');
                            console.log(result); 
                        },
            error:      function(jqXHR, textStatus, errorThrown) {
                            console.log(jqXHR);
                            console.log(textStatus);
                            console.log(errorThrown);
                        }
        });         
    }
});

アップデート; errorThrown は「SyntaxError」です。The textStatus = 'parseerror' ただし、ファイルの内容は次のとおりです。

<?php
    include './ajax-base.php';

    echo 'OK I\'m here!';

面白いことに、jqXHR からの responseText は作成されるエコーです。

4

2 に答える 2

1

ああ、間違いを見つけました。私のajax-base.phpファイルでは、contenttypeでヘッダーを設定しましたapplication/json。これが私のエラーの原因でした。

于 2012-10-26T18:42:38.873 に答える
1

PHPの終了を見逃していると思います:

<?php
include './ajax-base.php';

echo 'OK I\'m here!';
?>
于 2012-10-26T18:19:26.827 に答える