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

只需更换

$("#picture_1, #picture_2, #picture_3, #picture_4, #picture_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 回答