JQuery Ajax插件文件上传简化了代码

时间:2010-02-24 07:30:42

标签: jquery file jquery-plugins upload

我目前正在使用Valums JQuery File Upload插件。该插件使用起来非常方便,但我不喜欢代码的外观。因为它占据了document.ready内部,例如:

$(document).ready(function() {
    var button = $('#button1'), interval;

    new AjaxUpload(button, {
        action: 'http://test.com/user/uploadfile', 
        name: 'myfile',
        onSubmit : function(file, ext){
            // change button text, when user selects file           
            button.text('Uploading');

            // If you want to allow uploading only 1 file at time,
            // you can disable upload button
            this.disable();

            // Uploding -> Uploading. -> Uploading...
            interval = window.setInterval(function(){
                var text = button.text();
                if (text.length < 13){
                    button.text(text + '.');                    
                } else {
                    button.text('Uploading');               
                }
            }, 200);
        },
        onComplete: function(file, response){
            button.text('Upload Finished');

            window.clearInterval(interval);

            // enable upload button
            //this.enable();

            alert(response);            
        }
    });
});

我的问题是代码可以更简化吗?这样我可以使代码或多或少看起来像:

$(document).ready(function() {
    var button = $('#button1'), interval;

    new AjaxUpload(button, {#leads to another function}#);
});

提前致谢

1 个答案:

答案 0 :(得分:0)

你是Javascript新手吗?我记得我第一次使用Javascript&amp; amp; jQuery很有趣,因为我不喜欢我的代码首先看的方式。问题是你真的必须习惯它并且理解它是有原因的。编写一个自定义插件来做这样的事情会起作用,但最后,你仍然会把代码藏在某个地方。只需选择您喜欢的代码嵌套方案,并为您的工作感到自豪,因为99%的客人不会真正关心=)