0

私は次のJavaScriptを持っています:

  $.get("/ajax/config-switch.php", { 'edit' : edit, 'id' : id },
     function(data){
        if (data[0] == 'success'){
           $('#tooltip-hovered').html(data[1]);
        }
     },'json'
  );

ただし、私がやりたいのは、次の行を返すことです。

$('#tooltip-hovered').html(data[1]);

javascript ではなく、PHP から。したがって、config-switch.phpファイルは次のように終了します。

<?php

if ($success){
echo json_encode(array('success', "$('#tooltip-hovered').html(data[1]);"));

?>

これはどういうわけか可能ですか?

4

1 に答える 1

1

私の理解が正しければ、サーバーの応答だけから JS コードを実行する必要があります。php ファイルは正しい JS コードを返し、それを実行する必要があります。

jsonの代わりにスクリプトdataTypeとして使用してみてください。したがって、JavaScript は次のようになります。

$.get(
    '/ajax/config-switch.php', 
    {'edit': edit, 'id': id},
    function(data) {
        console.log('callback');
    }, 
    'script'
 );

対応する PHP ブロック:

<?php

if ($success)
{
    echo "$('#tooltip-hovered').html('some value');";
}

?>
于 2013-07-28T17:12:04.557 に答える