0

の内容div1を別の にコピーする必要がありdiv2ます。

のコンテンツには、div1javascript を使用してオンザフライで生成されたファイルアップロード コントロール (HTML5) が含まれています。

を使ってこのようにしてみましたjQuery

$('#div2').html($('#div1').html());

上記のコードではhtml、ファイル アップロード コントロール内のファイルのパスのみが表示されます。

私もこれを使ってみjavascriptました:

var va = document.getElementById('div1');
document.getElementById('div2').innerHTML=va.innerHTML

しかし、それは役に立ちません。同じ結果になりましたが、ファイルアップロードコントロールが表示されていますが、ファイルパスが含まれていません。

をに置き換えてみましたinnerHTMLinnerText、html コンテンツがテキストとして表示されます。

で試してみましappendToたが、動作しますが、全体をjQueryにコピーします。div全体ではなく、コンテンツのみをコピーする必要があります。div1div2

確認しました

div コンテンツを別のコンテンツにコピーする

しかし、それは役に立ちません。

これが私のフィドルです

どんな助けでも大歓迎です。

4

3 に答える 3

2

コントロールのfileupload内容は、ユーザー (クライアント) のセキュリティ対策としてコピーされません。それについてあなたができることは何もありません。

ただし、変更されたフィドルhereで示されているように、実際の要素を移動する(コピーするのではなく) ことができます。

私はこのクロスブラウザをテストしていませんが、ブラウザがいつそれをさらにロックダウンするかはわからないので、ファイルアップロードコントロールで何か凝ったものを試すことはお勧めしません.

編集:コメントで@nbrooksが提案したように、参照リンクを追加しています。

読む時間があれば: http://answers.google.com/answers/threadview/id/61326.html

于 2013-01-02T06:27:15.607 に答える
1

このコードをチェックアウトしてください。

$(document).ready(function(){
    $('input[type=file]').change(function(e){
          $in=$(this);
          $("#div2").append ( $in.val() );
    });
});​

フィドルリンク

于 2013-01-02T06:27:47.277 に答える
0

これはうまくいきます

$(document).ready(function(){
        $('#datasubmit').click(function(){
             //var data = $('#div1')[0].innerHTML;

            //$('#div2')[0].innerHTML += data;
            $("#div2").append($("#div1").clone());
        });
    });

ここにフィドルがありますhttp://jsfiddle.net/AVjzA/2/

于 2013-01-02T06:10:16.043 に答える