0

問題があります - ajax リクエストで jQuery 変数を渡す必要があります。

ファイルajax.phpに2つのjquery変数と多くの役に立たない出力があり、どういうわけかそれらの変数の値のみを取得する必要があります。

何かのようなもの:

$.get('ajax.php', function (data) {
alert('data.var1'); alert(data.var2)
});
4

4 に答える 4

0

ドキュメントにスクリプト タグを追加する場合は、純粋な JavaScript を使用することをお勧めします。

var script   = document.createElement("script");
script.type  = "text/javascript";
script.src   = "ajax.php";
document.body.appendChild(script);

PHP ファイルからいくつかの値を取得したいだけの場合は、必要のないガベージなしでそれらの値のみを要求することをお勧めします。これはjsonとして実行できます。ただし、正しいデータ型を出力するには、php スクリプトを変更する必要があります。

$.ajax({
    url: 'ajax.php?get=json',
    type: 'GET',
    dataType: 'JSON'

})
.done(function(data) {
    console.log("success");
    alert(data.var1+'  '+data.var1);
})
.fail(function() {
    console.log("error");
})
.always(function() {
    console.log("complete");
});


//php
<?php>
if(isset($_GET['get']) &&  $_GET['get']=='json'){
    $ar=array();
    $ar['var1']='hello';
    $ar['var2']='hello';

    echo json_encode($ar);
}

?>
于 2013-09-30T12:28:18.470 に答える
0

ajax.phpファイルが実際の SCRIPT タグと JavaScript 出力を返す場合、それらが割り当てられる場所であるため、グローバル変数を介してそれらにアクセスできます。

$.get('ajax.php', function (data) {
  alert(var1); alert(var2);
  // or: alert(window.var1); alert(window.var2);
});
于 2013-09-30T11:41:26.337 に答える
0

データをページに追加する必要があるようです-たとえば、非表示のdivに追加すると、ページデータの一部になり、スクリプトでアクセスできます。このような:

$.get('ajax.php', function (data) {    
    $('#yourDivId').html(data);    
    alert(var2); //no need for data.var2 
});
于 2013-09-30T11:38:58.290 に答える
0

ajax 応答を含むスクリプト タグを持ってくる場合は、このようなことを試してください。それ以外の場合は、スクリプト タグを作成し、それに応答を追加する必要があります。

    $.get('ajax.php', function (data) {    
        $('yourdiv').html(data);    
        alert(var1); 
    });
于 2013-09-30T12:45:20.127 に答える