Javascript 正在将随机字符串添加到JS变量
基本上,我正在尝试使用JS将一些PHP加载到DIV中。 使用此代码:Javascript 正在将随机字符串添加到JS变量,javascript,jquery,Javascript,Jquery,基本上,我正在尝试使用JS将一些PHP加载到DIV中。 使用此代码: $('#preview').load("includes/event_image_crop.php?img=" + fname); 然而,它不仅仅是将fname字符串放在那里,它还添加了一个随机字符串,就像这样&=1369168657782 有什么想法吗 谢谢这是一项旨在防止缓存的功能。它应该对页面没有影响(除非您需要使用\uucode>GET变量),但如果需要禁用它,则应使用ajaxSetup设置cache:true: $
$('#preview').load("includes/event_image_crop.php?img=" + fname);
然而,它不仅仅是将fname字符串放在那里,它还添加了一个随机字符串,就像这样&=1369168657782
有什么想法吗
谢谢这是一项旨在防止缓存的功能。它应该对页面没有影响(除非您需要使用
\uucode>GET变量),但如果需要禁用它,则应使用ajaxSetup
设置cache:true
:
$.ajaxSetup ({
cache: true
});
当然,正如Ian提到的,这将影响页面上的每个Ajax调用,因此如果您有其他Ajax调用,请注意这一点。重构代码并使用比.load()
更可配置的函数可能更好
请看这里的一个类似(相反)问题:对不起,我略读了一点first的代码-这是我在这篇文章中的错误。你应该…+encodeUriComponent(fname)
如果文件名在url中包含无效字符,比如一个符号ANDDOESevent\u image\u crop.php
将用户重定向到某个位置?jQuery会自动添加该属性,以确保请求不被缓存如果不希望jQuery执行此操作,请使用$.ajax()
和setcache:true
我使用的是ajaxForm插件-在成功提交此表单后,将运行上面的代码。我已经添加了您建议的代码,但仍然不走运……我真的不建议为此使用$.ajaxSetup
。页面上的任何其他AJAX请求(任何变体)都会将此应用于该页面。不管怎样,如果您不想在末尾添加&=124234
,那么您需要cache:true
——在ajaxForm本身中将其更改为true。谢谢:D@Ian你说得对,cache:true
是正确的。更新了我的答案。我收回了我的反对票,但我仍然强烈同意@Ian re$。ajaxSetup
。如果你不需要的话,最好不要和全球人混在一起。