0

ファイルのアップロード後に動的に生成される div がいくつかあります。ファイルをアップロードするたびに、次の形式で div が作成されます。

<div id="uploadifive-fileupload-queue" class="uploadifive-queue">
    <div class="uploadifive-queue-item complete" id="uploadifive-fileupload-file-0">

        <div id="inputs">

            some text

        </div>
    </div>
</div>

アイテムがアップロードされるたびに、uploadifive-queue-item クラスの ID が増分され、uploadifive-fileupload-file-0、uploadifive-fileupload-file-1、uploadifive-fileupload-file-2 などになります。

私がやろうとしているのは、にクラスを追加することですが、#inputs作成したばかりのものだけです。

私は次のことを試しましたが、クラスを間違った div (通常は最初の div) に適用します

  $('#fileupload').uploadifive({
                'buttonClass'  : 'btn btn-primary',
                'buttonText'   : 'Select Thumbnail',
                'dnd' : false,
                'fileSizeLimit' : 1000,
                'method' : 'post',
                'simUploadLimit' : 1,
                'uploadScript' : './upload/',
                'onUploadComplete'  : function(file, data) {
                    $('#inputs:last').addClass('alert-error');
                }

            });

#fileuploadはフォームの名前です。HTML は次のとおりです。

<form id="fileupload">
    <input type="file" name="userfile" size="20" />
</form>

div は直下に追加され、同じコンテナー内にあります。

正しいdivを選択するにはどうすればよいですか?

4

1 に答える 1

1

これを試して:

$("#uploadifive-fileupload-queue .uploadifive-queue-item:last")最後に追加されたdivを提供する必要があります

したがって、 onLoadComplete ハンドラーは次のようになります。

'onUploadComplete'  : function(file, data) {
                    $("#uploadifive-fileupload-queue .uploadifive-queue-item:last").find('.inputs').addClass('alert-error');
                }
于 2012-07-11T19:57:50.410 に答える