[英]How to send a newline in a message to websocket
編輯:根據我的研究,問題是文本放置在textnode內,這阻止了將其作為html處理。 因此,到目前為止,所有答案都無效。
我正在從python腳本發送一些帶有websockets的消息。 由於我沒有使用websockets和Javascript的經驗,因此我僅舉了一些示例代碼並根據我的需要定制了消息。
發送消息很好,但是我需要在消息中包含換行符。 我嘗試在郵件中包含\\ n和“ <br>”,但它們只是打印到html頁面。
.html看起來像這樣:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="refresh" content="1" >
<title>Title</title>
</head>
<body>
<script>
var ws = new WebSocket("ws://127.0.0.1:5678/"),
messages = document.createElement('ul');
ws.onmessage = function (event) {
var messages = document.getElementsByTagName('ul')[0],
message = document.createElement('li'),
content = document.createTextNode(event.data);
message.appendChild(content);
messages.appendChild(message);
};
document.body.appendChild(messages);
</script>
</body>
</html>
嘗試用<br>
替換\\ n,請記住您使用html
message = message.replace(/\n/g, "<br>");
您可以嘗試添加CSS空格屬性
document.body.style = "white-space: pre;"
從文檔中: pre => Whitespace is preserved by the browser. Text will only wrap on line breaks. Acts like the <pre> tag in HTML
pre => Whitespace is preserved by the browser. Text will only wrap on line breaks. Acts like the <pre> tag in HTML
您是否在引號中加上了\\ n? 沒有引號就行不通
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.