jQuery AJAX将url作为字符串传递

626*_*626 2 javascript php ajax jquery

我有一个ajax函数,它将一串变量传递给我的脚本,但我有一个变量,需要包含一个带参数的完整url.

会发生什么是var1和var2成为$ _POST变量,但我需要将整个url变量保存为字符串.

var url = "http://domain.com/index.php?var1=blah&var2=blah";

var dataArray = "rooftop_id=" +rooftop_id+ "&url=" +url;

        $.ajax({
            type: "POST",
            url: "/scripts/error_check.php",
            data: dataArray,
            dataType: 'json'
        }); 
Run Code Online (Sandbox Code Playgroud)

我希望我的$ _POST变量看起来像这样:

$_POST['rooftop_id'] would be '1234'
$_POST['url'] would be 'http://domain.com/index.php?var1=blah&var2=blah'
Run Code Online (Sandbox Code Playgroud)

提前致谢!

Dan*_*jel 6

在url变量上使用encodeURIComponent():

var url = "http://domain.com/index.php?var1=blah&var2=blah";

var dataArray = "rooftop_id=1&url=" +encodeURIComponent(url);

$.ajax({
    type: "POST",
    url: "/scripts/error_check.php",
    data: dataArray,
    dataType: 'json'
}); 
Run Code Online (Sandbox Code Playgroud)