我没有编写以下代码,我不是Javascript专家。所以请原谅我,如果你觉得这是一个微不足道的错误。 不过这是代码:
jQuery.ajax({
type: barobj.method,
url: handler,
beforeSend: function (request) {
request.vote_id = vid;
...
},
complete: function (request, textStatus){
jQuery('#actor').filter("[title='"+request.vote_id+"']")
...
},
它在FF,Chrome,Safari中运行良好,但在IE7和IE中没有(惊喜?) IE8。
行Error: Object doesn't support this property or method
处的request.voteid = vid
例外情况
经过一些调试后,我发现在FF中,请求的类型为XMLHttpRequest
,而在IE 7& 8,它有IXMMHttpRequest
那么例外的原因是什么?我如何以能够取回vote_id
事件onComplete
值的方式解决问题?
非常感谢,
小煜。
答案 0 :(得分:3)
Javascript支持闭包,因此您的完整函数应该能够访问调用代码范围内的任何变量。您无需明确保留并将vid
值传递给它。
jQuery.ajax({
type: barobj.method,
url: handler,
beforeSend: function (request) { },
complete: function (request, textStatus){
jQuery('#actor').filter("[title='"+ vid +"']")
...
},