JQuery加载函数将字符串添加到url

时间:2014-03-11 10:36:41

标签: javascript php jquery

我有一个Javascript函数,可以将带有传递GET变量的php页面加载到div按钮上:

function loadMorePosts() {
var loadFeed = "php/feed.php?u=<?php echo $u; ?>";
$("#userPosts").load(loadFeed);
}

通过按钮上的简单onClick事件调用此方法。

当我单击按钮时,我在控制台中出现505错误,并且可以看到它在URL的末尾添加了一个字符串。例如:

php/feed.php?u=Admin&_=1394533348555

php/feed.php?u=Admin之后的部分并不意味着在那里。

loadFeed变量不会在整个网站的任何其他地方使用。

如果我从网址末尾删除<?php echo $u; ?>,我可以看到(在我的feed.php中使用var_dump($_GET);)它仍在发送随机字符串。

每次按下按钮都会增加,我认为它可能是一个时间字符串,但不确定。

这让我抓狂!请帮忙!

2 个答案:

答案 0 :(得分:0)

它是JQuery 缓存破坏者功能:https://forum.jquery.com/topic/jquery-turn-off-cache-busting-in-getscript

通过将缓存设置为true来关闭它:

cache : true

如果你使用一些JQuery插件,这可能是其中一个用它来激活它:

$.ajaxSetup({cache:false})

答案 1 :(得分:0)

添加到您网址末尾的字符串似乎是用于防止任何缓存问题的内容,对我而言,听起来它可能是一个时间戳,因为您说它会增加?

505错误表示以下内容:

  

服务器不支持使用的HTTP协议版本   请求。

这意味着您的Web服务器不喜欢您正在进行的请求,它可能就像需要协议到您的URL一样简单吗?

http://yourlocaldomain.com/php/feed.php?u=Admin

我建议您查看服务器日志以获取更多线索!