[英]Can't get $.ajax or $.get to work
我有这个$ .ajax(使用jquery)代码,它原来是$ .get,现在已注释,但是由于某种原因,我总是遇到错误,我找不到任何错误= /,我是否在忽略什么东西
$.fn.randomContent = function(options){
var contentArray = new Array();
var dType = "html";
var defaults = {
xmlPath: "../xml/client-quotes.xml",
nodeName: "quote"
};
var options = $.extend(defaults, options);
alert(options);
$.ajax({
type: "GET",
url: "../xml/client-quotes.xml",
dataType: "html",
success: function(){
$(defaults.nodeName).each(function(i){
contentArray.push($(this).text());
});
$(this).each(function(){
$(this).append(getRandom());
});
},
error: function(){
alert("Something Went wrong");
}
});
/*$.get(defaults.xmlPath, function(){
alert("get");
$(defaults.nodeName).each(function(i){
contentArray.push($(this).text());
});
$(this).each(function(){
$(this).append(getRandom());
});
}, type);//$.get*/
};
这是getRandom()函数:
function getRandom() {
var num = contentArray.length
var randNum = Math.floor(Math.random()*num)
var content = "";
for(x in contentArray){
if(x==randNum){
content = contentArray[x];
}
};
alert(content);
return content;
}
可能是浏览器正在缓存您的GET请求。 在这种情况下,请执行以下任一操作:
我更喜欢选择#1,特别是因为POST操作旨在更改服务器上的某些内容,因此,当我们的操作实际上确实在修改服务器状态时,我们应该使用该方法。 另一方面,GET请求是只读取数据而无所事事的请求。
我觉得GET请求更适合此任务,因此在我自己的代码中,我将防止缓存响应。
该网址必须是绝对的吗? 我从未尝试过在其中带有“ ../”的ajax请求。 您安装了FireBug吗? 您可以从服务器检查响应头。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.