20

複数のtextarea値をテキストファイルに保存するコードがあります。ただし、保存後に指定した改行は表示されません。テキストエリア内に手動で配置された改行のみを識別します。以下はコードです。助けてください。

<script>
    var TestVar = new Array(); 
    var i = 0;
    function save()
    {
        TestVar[i] = document.getElementById("text1").value + "\n" + document.getElementById("text2").value;
        mydoc = document.open();
        mydoc.write(TestVar);
        mydoc.execCommand("saveAs",true,"TicketID.txt");
        mydoc.close();
    }
</script>
</head>
<body>
    <form id=formtest>
        <textarea name="textarea" id="text1"></textarea>
        <textarea name="textarea" id="text2"></textarea>
        <input type="button" value="save" onclick="save()">
    </form>
</body>

4

2 に答える 2

26
text = text.replace(/\n\r?/g, '<br />');

text は textarea の値です。

于 2012-10-15T13:23:39.393 に答える
13

この問題は、改行 ( ) が HTMLタグ\nと同じではないことに起因しています。<br />

これを試して:

var text = document.forms[0].txt.value;
text = text.replace(/\n\r?/g, '<br />');

Edit、これをjsとして試してください:

var text = document.forms[0].txt.value;

if (text === true) { text = text.replace(/\n\r?/g, '<br />'); } 

var TestVar = new Array(i); 
var i = 0;
function save()
{
TestVar[i] = document.getElementById("text1").value + "/n" + document.getElementById("text2").value;
mydoc = document.open();
mydoc.write(TestVar);
mydoc.execCommand("saveAs",true,"TicketID.txt");
mydoc.close();
}
于 2012-10-15T13:22:38.870 に答える