2017-02-26 60 views
0

我使用jQuery多文件插件,這是插件的普通視圖jQuery中多文件插件動態創建輸入文件元件

enter image description here

這是此

<input type="file" id="someName" name="file" class="multi" onchange="return Plugins.handleFileSelect(this);"/> 
HTML語法

我試圖動態生成這個文件輸入

所以我試圖ap掛起這個曾經「點擊這裏」按鈕,點擊會發生

<button type="button" id="ifile">click here</button>    
<div id="target_div"></div> 

<script type="text/javascript"> 

    $('#ifile').click(function() { 
     // when the add file button is clicked append 
     // a new <input type="file" name="someName" /> 
     // to a target_div div 
     $('#target_div').append(
      $('<input/>').attr('type', "file").attr('name', "file").attr('id', "someName").attr('class', "multi").attr('onchange', "return Plugins.handleFileSelect(this);") 
     ); 
    }); 
</script> 

但一旦我這樣做其發電普通文件的輸入,但它不是上市文件正確

一次我打開檢查元素,我可以看到類似以下

視圖

enter image description here

我怎麼能產生這種正常

回答

1

您應該使用多文件的插件,而不是

$('#ifile').click(function() { 
    // when the add file button is clicked append 
    // a new <input type="file" name="someName" /> 
    // to a target_div div 
    var input = $('<input/>') 
       .attr('type', "file") 
       .attr('name', "file") 
       .attr('id', "someName"); 
    //append the created file input 
    $('#target_div').append(input); 
    //initializing Multifile on the input element 
    input.MultiFile(); 
}); 
+0

你的答案非常準確,我想如果你能回答[此問題(http://stackoverflow.com/questions/42466136/input-file-no-file-choosen-text-hide-using-button)太是隱藏「在上面的多文件輸入無文件choosen文本」 和我有[另一個問題](http://stackoverflow.com/questions/42468973/shorten-the-lengthy-label-name-using-substring-or-substr-in-jquery-multifile),這是縮短jQuery的多文件冗長的標籤名 – kez

0

你可以使用附加這樣

$('#target_div').append('<input type="file" id="someName" name="file" class="multi" onchange="return Plugins.handleFileSelect(this);"/>') 

順便說一句,你可以檢查jQuery的文檔進行追加

http://api.jquery.com/append/