开发者

"Error calling method on NPObject!" in Uploadify

开发者 https://www.devze.com 2023-02-17 07:51 出处:网络
I\'m using Uploadify to upload file in my CMS. Everything works fine until recently. I got an error Error calling method on NPObject

I'm using Uploadify to upload file in my CMS. Everything works fine until recently. I got an error

Error calling method on NPObject

on this line

document.getElementById(jQuery(this).attr('id') + 'Uploader').startFileUpload(ID, checkComplete);

on this part

uploadifyUpload:function(ID,checkComplete) {
            jQuery(this).each(function() {
                if (!checkComplete) checkComplete = false;
                document开发者_如何转开发.getElementById(jQuery(this).attr('id') + 'Uploader').startFileUpload(ID, checkComplete);
            });
        },

I don't know why and after a day debugging and testing I found that if I remove replace(/\&/g, '\\&') from

String.prototype.escAll = function(){
    var s = this;
    return s.replace(/\./g, '\\.').replace(/\?/g, '\\?').replace(/\&/g, '\\&');
};

It then works again. I really don't know why.

Any helps would be appreciated!


I think the reason is in additional Javascript libraries you use.

Some libraries (for example Prototype.js or jQuery.js) change behaviour of your code. For example, you can't overload prototype in some cases. The result may be undefined in clear (obvious) places (like you use an array variable with wrong index). You should view the source code of additional libraries, probably they do with prototype something that breaks your code in the function you mentioned.

In my practice I had the situation when overloading of prototype worked incorrectly (it was String prototype like in your case).

So just don't use prototype.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号