我可以从ajax返回javascript应该做什么吗?

时间:2013-07-28 11:47:17

标签: php javascript jquery

我有以下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]);
来自PHP的

,而不是在javascript中。所以config-switch.php文件会以类似的结尾结束:

<?php

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

?>

这有可能吗?

1 个答案:

答案 0 :(得分:1)

如果我理解正确,您只想从服务器响应中执行JS代码。 php文件应该返回一些正确的JS代码,并且应该执行它。

尝试使用 dataType 脚本而不是 json 。所以你的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');";
}

?>