HTML
<table class='list_table'>
<input type='file' class='form_textbox' name='"LicenseCk1' size='40'>
<input type='file' class='form_textbox' name='"LicenseCk2' size='40'>
<input type='file' class='form_textbox' name='"LicenseCk3' size='40'>
</table>
jquery
$('.list_table').on('change',$("input[name^='LicenseCk']"),function(){
preview(this,$(this).attr('name'));
});
function preview(input,inputName) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
var img = '<img class="'+inputName+'" style="max-width: 150px; max-height: 150px;" src="'+e.target.result+'">';
var div = '<div id="'+inputName+'" style="max-width: 150px; max-height: 150px;"></div>';
$(input).after('<div style="margin: 0 10px;">'+img+'<img src="remove-icon.png" width="20" alt="刪除" onclick="del_pic(this,\''+inputName+'\')"></div>');
}
reader.readAsDataURL(input.files[0]);
}
}
function del_pic(e,value){
var newInput = "<input type='file' class='form_textbox' name='"+value+"' size='40'>";
$(e).parent().prev().remove();
$(e).parent().remove();
$('.'+value+'Div').append(newInput);
var input = $('input[name="removePic"]');
if(input.val() == '' || input.val() == undefined || input.val() == null) input.val(value);
else input.val(input.val()+","+value);
}
我現在jquery的 onchange 取$(this)會取table的東西
如果我要取的$("input[name^='LicenseCk']")的值
那我this 要改成甚麼 才能取到
補充
因為我上傳圖片後 會給他預覽圖
然後預覽圖旁邊有小按鈕可以刪除圖檔
我會把inputfile 也一起刪掉(為了把原先上傳的刪除)
然後再把inputfile 重新創建 在抓 新創建的name
別綁在table 會有問題
event在body 或者div上
https://jsfiddle.net/14br5cud/4/
但你範例size都一樣不知道這樣有什麼意義就是了...
如果你是要抓檔案的size那就又不一樣了