因此,我尝试使用localstorage创建一个简单的便利贴,您可以在其中键入并自动保存。
当我按下linebreak时,我遇到了问题。 Localstorage不适用换行符。
HTML:
<div contenteditable="true" class="s_content">Type something, press linebreak and type something again. Then refresh</div>
JS:
$('div.s_content').text(localStorage.getItem ("foo"))
$("div.s_content").on("keyup paste", function () {
localStorage.setItem ("foo", $('div.s_content').text())
});
尝试输入内容,按回车键并输入更多内容。然后刷新页面。
如何将<br>
/ line-break
应用到localstorage?
答案 0 :(得分:2)
将.text()调用更改为.html(),它应该可以工作:
$('div.s_content').html(localStorage.getItem ("foo"))
$("div.s_content").on("keyup paste", function () {
localStorage.setItem ("foo", $('div.s_content').html());
});
由于您使用的是标记,因此内部数据是HTML而不仅仅是文本。因此,您需要使用br或div标记将div.s_content的内容设置为HTML,而不仅仅是换行符。如果要从其他地方提取文本,则需要先将换行符转换为br或div标记。
答案 1 :(得分:0)
在Ajax调用中保存数据,
传递这样的值,
if u use
$('#container').html(); // You ll get html tags with text
//like this-----------> teste<br><br><br>r
else
$('#container').text(); // You ll get only text
//like this -----------> tester
try console and check buddy,
console.log('----------->'+$('#container').html());
console.log('----------->'+$('#container').text());
Your coding:
$('div.s_content').text(localStorage.getItem ("foo"))
$("div.s_content").on("keyup paste", function () {
localStorage.setItem ("foo", $('div.s_content').html()) // changes has to Here text to html
});