0

私はこのHTMLコードを持っています:

<div class="custom-input-file product-left">
    <input type="file" class="input-file" name="mediabundle_mediatype[file]" id="picture_1">
    <div class="archivo">Seleccionar ...</div>
    <img style="display:none" alt="your image" src="#" id="picPreview1">
</div>

<div class="custom-input-file product-left">
    <input type="file" class="input-file" name="mediabundle_mediatype[file]" id="picture_2">
    <div class="archivo">Seleccionar ...</div>
    <img style="display:none" alt="your image" src="#" id="picPreview2">
</div>

<div class="custom-input-file product-left">
    <input type="file" class="input-file" name="mediabundle_mediatype[file]" id="picture_3">
    <div class="archivo">Seleccionar ...</div>
    <img style="display:none" alt="your image" src="#" id="picPreview3">
</div>

<div class="custom-input-file product-left">
    <input type="file" class="input-file" name="mediabundle_mediatype[file]" id="picture_4">
    <div class="archivo">Seleccionar ...</div>
    <img style="display:none" alt="your image" src="#" id="picPreview4">
</div>

<div class="custom-input-file product-left">
    <input type="file" class="input-file" name="mediabundle_mediatype[file]" id="picture_5">
    <div class="archivo">Seleccionar ...</div>
    <img style="display:none" alt="your image" src="#" id="picPreview5">
</div>

そして、それぞれに同じ jQuery コードを実行する必要がありますが、もちろん要素の ID を変更します。これは私が作ったコードです:

$("#picture_1, #picture_2, #picture_3, #picture_4, #picture_5").change(function() {
    readURL(this);
    $(this).parent().find(".archivo").html("Cambiar imagen");
}).css('border-width', function() {
    if (navigator.appName == "Microsoft Internet Explorer")
        return 0;
});

$(".document-file input:file").change(function() {
    $(this).parent().find(".file").html($(this).val());
}).css('border-width', function() {
    if (navigator.appName == "Microsoft Internet Explorer")
        return 0;
});

しかし、トラフ要素を反復して、変更中の要素を変更する方法がわかりません。何か助けはありますか?

4

1 に答える 1

1

交換するだけ

$("#写真_1, #写真_2, #写真_3, #写真_4, #写真_5")...

$(".input-file").change(function() {
    readURL(this);
    $(this).parent().find(".archivo").html("Cambiar imagen");
    $(this).parent().find(".file").html($(this).val());
}).css('border-width', function() {
    if (navigator.appName == "Microsoft Internet Explorer")
        return 0;
});

クラス セレクター ( http://api.jquery.com/class-selector/ ) を使用するようになりました。

于 2013-08-17T15:37:02.890 に答える