2012-10-15 49 views
12

Tôi có một mã nơi nó lưu nhiều giá trị văn bản trong một tệp văn bản. Tuy nhiên, nó không hiển thị các ngắt dòng tôi chỉ ra sau khi lưu nó. Nó chỉ xác định các ngắt dòng w/c được đặt thủ công trong vùng văn bản. Dưới đây là mã. Hãy giúp tôi.javascript | lưu giá trị văn bản với ngắt dòng

<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> 

+0

Mã phía máy chủ của bạn lưu dữ liệu này là gì? – MaVRoSCy

+1

nếu bạn đang sử dụng PHP, bạn nên cân nhắc sử dụng chức năng PHP "nl2br" khi lưu dữ liệu của hộp văn bản trong bảng. sau đó bạn có thể chuyển đổi bất kỳ nội dung nào của bạn "
" trong bảng với: str_replace ("
", "\ n", $ textboxValue); –

+0

Xin chào. Không sử dụng bất kỳ kịch bản lệnh phía máy chủ nào vì nó sẽ chỉ lưu tệp cục bộ. –

Trả lời

10

Vấn đề bắt nguồn từ thực tế là dòng phá vỡ (\n) là không giống như HTML <br /> thẻ.

Hãy thử điều này:

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

Sửa, hãy thử này là 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(); 
} 
+0

đã thử điều đó và nó cho tôi lỗi dưới đây. Chi tiết lỗi trang web Thông báo: 'document.forms.0.txt' là null hoặc không phải là đối tượng Dòng: 4 Char: 1 Mã: 0 –

+0

Chi tiết lỗi trang web Tin nhắn: 'document.forms.0.txt' là null hoặc không phải là một đối tượng Line: 4 Char: 1 Mã số: 0 –

+0

hãy thử đặt nó trong một nếu, đọc câu trả lời mới của tôi – lifetimes

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

văn bản là giá trị từ textarea.

Các vấn đề liên quan