Nat*_*nes 14 javascript ajax jquery
我有一些jQuery代码,这是一个非常奇怪的错误.谷歌浏览器调用该错误Uncaught TypeError: Illegal invocation并说它被c.extend.param.e引入jquery-1.4.4.min.js第144行,但是将其回溯到我的$ .ajax调用,如下所示:
$.ajax({
url: target,
type: method,
dataType: 'json',
data: sendData,
success: function(result) {
if (result.redirect) {
window.location = result.redirect;
}
else {
for (var i in result) {
if ($(i).size()) {
$(i).html(result.i);
}
}
}
}
});
Run Code Online (Sandbox Code Playgroud)
关于SO的另一个看起来有点像这样的问题将其归结为使用$而没有正确地将它包含在jQuery函数中,但是我很确定这次不是我的错误,因为我一直很小心.
Ivo*_*zel 19
问题在这里:
event.preventDefault();
var data = $.extend({
referrer: window.location, <-- window.location is an object,
should be window.location.href
href: $(this).attr('href')
}, options.linkData);
loadPage(options.linkUrl, options.linkMethod, data);
Run Code Online (Sandbox Code Playgroud)
改变它使它工作,它打破的原因?
<jQUery1.4.4 at line 6079>
s[ s.length ] = encodeURIComponent(key) + "=" + encodeURIComponent(value)
Run Code Online (Sandbox Code Playgroud)
encodeURIComponent不喜欢这个window.location对象,因为它只需要strings.
请参阅:https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/encodeURIComponent
| 归档时间: |
|
| 查看次数: |
25031 次 |
| 最近记录: |