0

我正在尝试使用 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在这我没有得到完整的网址然后如何获得带有特殊字符(&)的完整网址。

谢谢!

4

3 回答 3

1

你试过了吗?

encodeURIComponent()

decodeURIComponent()
于 2013-10-22T07:04:40.343 回答
0

您缺少?使用?而不是&

var video='https://youtube.com/v/e6howcqnxfw?start=25&end=80';
于 2013-10-22T07:01:26.063 回答
0

一种解决方案是将您的 URL 分成几个部分:

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

其他解决方案是使用该函数转义整个 URL,encodeURIComponent(video);然后您可以使用urldecode()PHP 函数解码 URL(在服务器端)并获取所有变量。

于 2013-10-22T07:02:50.973 回答