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]);

来自 PHP,而不是在 javascript 中。所以config-switch.php文件会以这样的结尾:

<?php

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

?>

这有可能吗?

4

1 回答 1

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');";
}

?>
于 2013-07-28T17:12:04.557 回答