Jquery .Trigger()只触发一次

时间:2014-02-09 15:11:15

标签: javascript jquery jquery-mobile

单击相应的按钮时,将触发隐藏文件输入,该输入部分自动提交.change。在更改功能中,我们审核文件并运行更新或返回错误。

发生错误时会出现问题,因此下次单击该按钮时,更改功能似乎不起作用。如果在产生错误后再次按下,我怎么能让它工作。我尝试过使用die()和unbind(),但这没效果。

    //
// Image Upload 1 
//

$('.btn-image-upload').live('tap', function(event) { 
    // Variable
    var id = $(this).attr('id');    
    // Target        
    if (!$(event.target).is('#upload-'+id)) {
        $(this).find('#upload-'+id).trigger('click');
    }
});

//
// Image Upload 2
//

$('.file').live('change', function(event) {

    // Variable
    var id = $(this).attr('id');

    // HTML 5 Checks        
    var file = this.files[0];
    var name = file.name;
    var size = file.size;
    var type = file.type;

    // File Check
    switch(type) {
        case 'image/png': 
        case 'image/gif':
        case 'image/jpg': 
        case 'image/jpeg':
        break;
        default:
        // Error
        $('.btn-image-upload').text('Only Jpg, Png, Gif Allowed');
        // Return
        return false;
    } 

    // Size Check
    if(size > 2097152) {
        // Error
        $('.btn-image-upload').text('File Too Big 2mb Max');
        // Return
        return false;
    } 


});

0 个答案:

没有答案