0

I have a upload script that is adding and extra upload button (that works fine), but the remove button does not work

var i = $("#AddFileInputBox div").size() + 1;
$("#AddMoreFileBox").click(function () {
    event.returnValue = false;
    if(i < MaxFileInputs)
    {
        $('<span><input type="file" id="fileInputBox" size="20" name="file[]" class="addedInput" value=""/><a href="#" class="removeclass small2"><img src="images/close_icon.gif" border="0" /></a></span>').appendTo(FileInputsHolder);
        i++;
    }
    return false;
});

$("body").on("click",".removeclass", function(e){
    event.returnValue = false;
    if( i > 1 ) {
            $(this).parents('span').remove();i--;
    }

}); 

Chrome console:

Uncaught TypeError: Object #<Object> has no method 'on' 

line: 113, which is

$("body").on("click",".removeclass", function(e){

Thanks for any help in advance

4

2 回答 2

4

您需要将您的 JQuery 版本至少更新到 1.7 版,因为那是.on()引入的时候。这是JQuery 版本 1.7.on()中引入的文档。

另外需要注意的是,该.size()方法自JQuery 1.8起已弃用,请使用.length.

因此,要么使用 JQuery 1.7,要么如果您想使用最新版本的 Jquery,请将所有实例替换.size().length.

这是您的示例的工作副本。(使用 JQuery 1.9.1)

于 2013-07-12T21:33:39.493 回答
0

我通过恢复到 jquery 1.7 来修复它并且它有效,感谢所有帮助的人。

于 2013-07-12T21:47:30.233 回答