如何将javascript变量返回给Ajax?

时间:2009-05-21 02:10:48

标签: php ajax

当我使用ajax调用php时,有谁知道如何将javascript变量返回到ajax而不是字符串值。有关详细信息,请参阅以下示例:

的Ajax:

    //Ajax Param 
    var paramList = "Action=make_process";

    ajaxRequest = $.ajax({
            url: "admin.php",
            type: 'POST',
            data: paramList,
            error: function(){
                  //error message here
            },
            success: function(data){
                 //read return javascript variable here;
            }   
        });   

PHP:

public function validationChk()
    {
        $error_msg['error_msg'][] = array("msg"=>"hello");
            $error_msg['error_msg'][] = array("msg"=>"hi");

        echo "var ErrorMapping = " . json_encode($error_msg). ";\n\n";          
        exit;
    }

2 个答案:

答案 0 :(得分:1)

您想知道如何从AJAX响应中返回吗?

然后查看this jQuery FAQ answer.

答案 1 :(得分:0)

你想要做的并不是一个好主意。你可能想要的是从你的成功回调中将JSON响应解码回一个对象,然后返回那个

解码JSON字符串涉及通过eval管道并希望您没有错误/恶意数据。这样做的安全方法是在Javascript中解析JSON。如果你 自己走这条路,那么至少尝试使用已写的东西。在Google代码中搜索“json-sans-eval”。

更好的选择是使用jQuery的内置功能:

jQuery.getJSON( url, [data], [callback] )

它为你做了所有艰难的事情。花些时间阅读jQuery的文档。那里有很多有用的东西。