jQuery AJAX没有加载带哈希的URL

时间:2014-07-01 16:46:37

标签: javascript jquery ajax

我有以下AJAX:

$.ajax({
    cache: false,
    type: 'GET',
    url: 'preview.php?url=http://domain.com/Demo/MarsPlaybook/#/view-0',
    ...

然而,当我检查控制台是否有所请求的内容时,散列部分被分箱...

控制台只是说:'preview.php?url=http://domain.com/Demo/MarsPlaybook/'

为什么会发生这种情况?或者我怎么能阻止它?

2 个答案:

答案 0 :(得分:4)

哈希片段不会发送到服务器,你无法成功。该哈希仅供浏览器维护您在页面中的位置。

您必须将其编码为查询字符串的一部分。

  

片段标识符的功能与URI的其余部分不同:即,它的处理完全是客户端的,没有来自Web服务器的参与

- http://en.wikipedia.org/wiki/Fragment_identifier

答案 1 :(得分:1)

您可能需要将网址设置为:'preview.php?url=http://domain.com/Demo/MarsPlaybook/?view=0'然后在服务器/ php端直接设置为'preview.php?url=http://domain.com/Demo/MarsPlaybook/#/view-0'

然而,在不了解你正在做什么的情况下,很难为你说出最好的答案。