2017-03-02 36 views
0

画像を除くすべてのフォームフィールドをポップアップウィンドウに表示できます。イメージはフォームに直接表示されます。送信前に他のフィールドとともにポップアップウィンドウに表示する必要があります。最後の行でポップアップで画像をプレビューする前にJavaScriptを使用してアップロードする前に

function openPreview() 
{ 
var title = document.getElementById("title").value; 
var msg= document.ElementByClassName("nicEdit-main")[0].innerHTML; 
var category = document.getElementById("category").value; 
var status = document.getElementById("status").value; 
var oFReader= new FileReader(); 
oFReader.readAsDataURL(document.getElementById("fileupload").files[0]); 
oFReader.onload = function (oFREvent) { 
document.getElementById("uploadPreview").src = oFREvent.target.result; 
}; 
var popWin=window.open(title, 'Preview_Entry'); 
popWin.document.write('Title:' + title + '<br /> Message:' + msg + '<br /> Category: ' + category + '<br /> Status:' + status + oFReader); 
} 
+0

メインウィンドウにイメージの「src」を設定しています。代わりに、ポップアップウィンドウにイメージタグを作成し、それを 'src'に設定してください。 –

+0

私はvarを作成し、popWin.document.writeに書きました。私はそれを表示する問題に直面している。 popWin.document.write( 'タイトル:' +タイトル+ '
メッセージ:' + msg + '
カテゴリ:' +カテゴリ+ '
ステータス:' +ステータス+ imgUrl); – Rev

答えて

1

変更は、あなたが画像データがロードされると、ポップアップを開く必要が所望の出力

var oFReader= new FileReader(); 
var imgUrl; 
oFReader.readAsDataURL(document.getElementById("fileupload").files[0]); 
oFReader.onload = function (oFREvent) { 
document.getElementById("uploadPreview").src = oFREvent.target.result; 
imgUrl=oFREvent.target.result; 
}; 
var popWin=window.open(title, 'Preview_Entry'); 
popWin.document.write('Title:' + title + '<br /> Message:' + msg + '<br />  Category: ' + category + '<br /> Status:' + status + '<br />' +"<img src='" + imgUrl + "' />); 
+0

私はそれを閉じるのを忘れたと思います。私は+ ''として編集しました);しかし、それはまだポップアップウィンドウにエラーを表示しています! – Rev

+0

あなたが得たエラーは何ですか?投稿できますか? –

+0

これはポップアップウィンドウで表示されます。画像は私のフォームに表示されています! HTTP Status 404 -/MobileAppProj/Title – Rev

0

を与える必要があります。そのため、プレビュー画像srcを適切に設定することができます。これを試してください:

var oFReader= new FileReader(); 
oFReader.readAsDataURL(document.getElementById("fileupload").files[0]); 
oFReader.onload = function (oFREvent) { 
    var popWin=window.open('about:blank', 'Preview_Entry'); 
    popWin.document.write('Title:' + title + 
    '<br /> Message:' + msg + 
    '<br />  Category: ' + category + 
    '<br /> Status:' + status + 
    '<br />' + 
    '<img src="' + oFREvent.target.result + '" /> '); 
    popWin.document.close(); 
}; 
+0

私はこの方法を試しましたが、プレビューボタンをクリックしても何も起こりません!ウィンドウもポップアップされません。なぜこの行を削除したのでしょうか?document.getElementById( "uploadPreview")。src = oFREvent.target.result; – Rev

+0

'document.getElementById(" uploadPreview ")。src = oFREvent.target.result; 'あなたのメインウィンドウ/フォームにイメージを表示します。私はあなたがそれを望んでいないと思います。そして、このコードは私のローカルマシンで動作しています。ポップアップが開いていない場合は、画像をロード中に何らかのエラーが発生している可能性があります。コンソールで何のエラーが表示されますか? –

+0

はい。私はイメージをフォームに表示する代わりにポップアップウィンドウに表示したい。私は私のコンソールに何のエラーも出ていません。私のプレビューボタンを押すと、何も実行されません。 – Rev

関連する問題