拆分&连接要在函数中使用的变量

时间:2014-02-20 23:04:18

标签: javascript

我有这个代码,它是上传前图像的客户端预览。我有一系列文件上传(其中6个),需要拆分和cssStr以允许变量值..(.upload-preview1.upload-preview 2等。)

我尝试过以这种方式拆分和连接字符串:

var cssStr = ".upload-preview" + "1" + " img";    

并尝试了一些其他方法,包括concat() ..但似乎无法让它发挥作用。下面的代码按原样运行,但不允许对cssStr变量进行任何更改,具体取决于数组中的哪个项目(稍后我将编写)。

$(window).load(function () {
    $(document).ready(function () {
    var cssStr = ".upload-preview1 img";
        var preview = $(cssStr);

        $(".file").change(function (event) {
            var input = $(event.currentTarget);
            var file = input[0].files[0];
            var reader = new FileReader();
            reader.onload = function (e) {
                image_base64 = e.target.result;
                preview.attr("src", image_base64);
            };
            reader.readAsDataURL(file);
        });
    });
}); 

1 个答案:

答案 0 :(得分:0)

我会尝试这样的事情:

$(".file").each(function(idx, el) {
  var cssStr = ".upload-preview" + idx + " img";
  var preview = $(cssStr);
  $(el).change({ <your code here> });
});

每个方法都使用一个带有元素索引和DOM元素本身的函数:http://api.jquery.com/each/

我假设.file是每个文件输入的包装器上的CSS类。