我正在尝试使用jquery ajax将url从一个页面发送到另一个页面。但在此url中我们使用的是特殊字符,如下所示
var video='https://youtube.com/v/e6howcqnxfw&start=25&end=80';
$.ajax(
{
type: 'POST',
url: 'video.php',
data: 'video='+video,
success: function(response)
{
$('#popup_box').show();
$('#video').html(response);
},
error:function()
{
alert('Error');
}
});
但在下一页中,我的值为"https://youtube.com/v/e6howcqnxfw"
我从数据库中获得var video
值。
在这个我没有得到完整的URL然后如何获得特殊字符(&)的完整网址。
谢谢!
答案 0 :(得分:1)
encodeURIComponent()
decodeURIComponent()
答案 1 :(得分:0)
您遗失?
使用?
代替&
var video='https://youtube.com/v/e6howcqnxfw?start=25&end=80';
答案 2 :(得分:0)
一种解决方案是将您的网址分成几个部分:
var video='https://youtube.com/v/e6howcqnxfw;
var start_time = 25;
var end_time = 80;
然后,你的AJAX帖子看起来像这样:
$.ajax(
{
type: 'GET',
url: 'video.php?video='+video+'&start='+start_time+'&end='+end_time,
success: function(response)
{
$('#popup_box').show();
$('#video').html(response);
},
error:function()
{
alert('Error');
}
});
其他解决方案是使用函数encodeURIComponent(video);
转义整个URL,然后使用urldecode()
PHP函数解码URL(在服务器端)并获取所有变量。