1

これは私のコードです:

$(function(){

var btnUpload=$('#browse');
var adinfoid=$('#adinfoid').val();
new AjaxUpload(btnUpload, {
    action: '<?php echo base_url()?>index.php/post/upload_editmainimage/'+adinfoid,
    name: 'uploadfile',
    onSubmit: function(file, ext){

        $("#progressid").css("display","block");
        if (! (ext && /^(jpg|png|jpeg|gif|JPG|PNG|JPEG|GIF)$/.test(ext))){
            $("#mainphotoerror").html('Only JPG, PNG, GIF, files are allowed');
            $("#mainphotoerror").css('display','block');
            return false;
        }           
    },
    onComplete: function(file, response){ //alert(response);

        if(response){
                /*$(".main_image").html('');
                $(".main_image").html(response);*/
                $("#progressid").css("display","none");
                $("#image"+<?php echo $mainimage->intphotoid; ?>).css('display','block');
                $("#imagemainicon"+<?php echo $mainimage->intphotoid; ?>).css('display','block');

                $("#mainimageicon").attr("src",response);   
                $("#mainimageicon").attr("width",55);
                $("#mainimageicon").attr("height",55);
                $("#mainimageicon1").attr("src",response);  
        }else{
        alert("error");
        }
    }
}); 

});

<input type="button" id="browse" class="browse_media" value="Browse">
        <div id="progressid" class="displayNone">
            <img src="//s3.amazonaws.com/s3.racingjunk.com/102/images/procesing.gif" width="117" height="20" />
            Uploading.....
        </div>

参照ボタンをクリックすると、5分間プログレスバーを表示する必要があります。5分後、プログレスバーが非表示になるか表示されなくなります。プログレスバーが非表示になると、画像が表示されます。

これどうやってするの?これは可能ですか?

4

3 に答える 3

2

これを試して
ください http://www.9lessons.info/2012/04/file-upload-progress-bar-with-jquery.html

私は自分で試したことはありませんが、この夜の仕事

于 2012-05-17T09:04:21.653 に答える
1

あなたはこのようにしなければなりません:--

<div id="popup1" class="popup_block">
    <?php echo $this->Html->image('ajax-loader2.gif'); ?>
    <h4>Processing Please Wait...! </h4>
</div>

スクリプト内:- Jquery の使用

 //Fade in Background
            jQuery('body').append('<div id="fade"></div>'); //Add the fade layer to bottom of the body tag.
            jQuery('#fade').css({'filter' : 'alpha(opacity=80)'}).fadeIn(); //Fade in the fade layer
            var popID = 'popup1';
            //var popWidth = 500;
            //Fade in the Popup and add close button
            jQuery('#' + popID).css({ 'width': '250' });

しばらくの間、Jquery を指定するか、次のようにすることができます:--

window.setInterval(function() {
    // this will execute every 5 minutes => show the alert here
}, 300000);
于 2012-05-17T09:16:29.930 に答える
0

共有したコードを使用してそれを達成することはできません。実際の進行状況を表示するには、サーバーに送信されたデータの量を知る必要があります。

人々はそれをどのように行うのですか?1. Java アプレットや Flash などのサード パーティのプラグインを使用してファイルをアップロードしました。3. HTML 5 を使用している。

サーバーに送信されたファイルの量に関するリアルタイムのフィードバックを得るには、サードパーティのプラグイン (古いブラウザーを使用している場合) または HTML5 XMLHttpRequest オブジェクトが必要です。

アップロード ステータス/進行状況バーでhtml5 ファイルのアップロードを確認します。

于 2012-05-17T09:15:37.090 に答える