2012-03-11 72 views
0

如何克隆文件輸入字段的值屬性。 事情是這樣的:如何克隆值輸入文件

<input type="file" id="field1"/> 
<input type="file" id="field2"/> 
<script> 
$('#field2').val($('#field1').val()); 
</script> 
+0

看起來應該工作,這是什麼問題? – Fresheyeball 2012-03-11 19:59:18

+0

您是否希望訪問用戶所選文件的完整路徑?如果是這樣,我敢肯定你將無法做到。 – 2012-03-11 20:01:48

+0

[Exception ...「Security error」code:「1000」nsresult:「0x805303e8(NS_ERROR_DOM_SECURITY_ERR)」location:「http://local/js/jquery-1.7.1.min.js Line:2」] {constructor = DOMException,文件名=「http://local/js/jquery-1.7.1.min.js」,代碼= 1000,更多...} – 2012-03-11 20:11:35

回答

2

我發現這個問題的解決方案:

<input type="file" id="field1"/> 
<span id="field2_area"><input type="file" id="field2"/></span> 
<script> 
$('#field1').change(function(){ 
    var clone = $(this).clone(); 
    clone.attr('id', 'field2'); 
    $('#field2_area').html(clone); 
}); 
</script> 
+1

可以請你告訴我從「field1_area」到哪裏。 – 2014-01-02 10:43:47

+0

2014-05-08 11:13:30

+3

這不起作用。它似乎克隆,但當表單提交時,第二個文件輸入是空的。 – 2015-08-20 16:08:36

1

如果你要他們保持不變,當用戶與之交互:

$(function(){ 
    $('#field1').on('keyup blur', function(){ 

      $('#field2').val($(this).val()); 

    }).blur(); 
}); 

觸發頁面加載模糊()將已做一樣的代碼你已經

編輯剛剛意識到這些文件中的字段...瀏覽器的安全限制你可以與他們無關

+0

這不行,請參閱上述評論 – 2012-03-11 20:16:33

+0

閱讀我已編輯的免責聲明 – charlietfl 2012-03-11 20:22:27