0

このサイトのフォーム アップローダー プラグインを使用して写真をアップロードしていますhttp://jquery.malsup.com/

それは本当にうまく機能し、私はそれに満足しています.

唯一の問題は、フォームが添付されているときに HTML DIV を削除し (Form 要素を含む HTML をクリアする)、HTML の 2 回目の再作成時にそれを再作成する (サイトでこれを行う必要がある) ときです。フォームが 2 度目に添付されます。(例: 要素が削除されてもバインドは解除されません)。

イベントのバインドを解除しようとしていますが、できないようです。

初期バインドは次のようになります

$('#joinPhotoUploadFormProfile').ajaxForm({

http://jquery.malsup.com/ - プラグインのサイト オプションにアンバインドが表示されません。

私は次のようなことを試しました:

$('#joinPhotoUploadFormProfile').children().off();
$('#joinPhotoUploadFormProfile').add("*").off();
$('#joinPhotoUploadFormProfile').ajaxFormUnbind();
$('#joinPhotoUploadFormProfile').unbind('ajaxForm');

助言がありますか?

以下は私がそれを設定する方法です:

$('#joinPhotoUploadFormProfile').ajaxForm({
    beforeSend: function() {
    $('#progressGallery').fadeIn('fast');
    var percentVal = '0%';
    $('#uploadGalleryBar').width(percentVal);
    $('#uploadGalleryPercentage').html(percentVal);
    },

    uploadProgress: function(event, position, total, percentComplete) {
    var percentVal = percentComplete + '%';
    $('#uploadGalleryBar').width(percentVal);
    $('#uploadGalleryPercentage').html(percentVal).css({'left':'40%','color':'lightblue'});
    },

    complete: function(xhr) {

委任をオフにする必要がありますか? どうすればいいですか?

4

1 に答える 1

1

これによれば:

ajaxform:それを削除する方法、デフォルトの送信アクションが実行されます

$('#joinPhotoUploadFormProfile').ajaxFormUnbind();

動作するはずです。

フォームを削除する前に、必ず unbind を呼び出してください!

于 2013-11-07T08:45:34.987 に答える