変数 var doc に割り当てられた HTML Document オブジェクトがあります。このドキュメントオブジェクトを使用して、値がレンダリングおよび書き込まれるテキストファイルに文字列値をレンダリングしていますが、IE11 ブラウザーでは不適切な形式ですが、IE8、IE10、ff n chrome では正常に動作します。以下のコードを見つけてください:
function savecontent(str){
var filename = "data.txt";
var str=replaceAll(str,'<doublequote>','"');
var w = window.frames.w;
if( !w )
{
w = document.createElement( 'iframe' );
w.id = 'w';
w.style.display = 'none';
document.body.insertBefore( w,null );
w = window.frames.w;
if( !w )
{
w = window.open( '', '_temp', 'width=100,height=100' );
if( !w )
{
window.alert( 'Sorry, could not create file.' ); return false;
}
}
}
var doc = w.document;
doc.open('text/plain');
doc.charset="iso-8859-1";
doc.write(str);
doc.close(doc.write(str));
w.close();
if( doc.execCommand( 'SaveAs', false, filename ) )
{
window.alert("Please save the file.");
}
}
私のstrは、employee_firstname、employee_lastname、employee_id、employee_salary、employee accountno、employee_dobなどのようなものになる可能性があります.
これは IE11 で次のようにレンダリングされます。
employee_firstname,employee_lastname,
employee_id,employee_salary,employee accountno,employee_dob
しかし、期待どおりであり、データは IE8,ff n chrome で次の形式でレンダリングされます。
employee_firstname,employee_lastname,employee_id,
employee_salary,employee accountno,employee_dob
IE8、FF n chrome などの他のブラウザーで気付いた違いは、他のブラウザーと比較して IE11 で発生する改行の違いです。IE11 ブラウザーまたは document.write() の代わりに、テキスト ファイルでデータのレンダリングを適切にフォーマットする方法を教えてください。