我遇到了问题,因为我收到了错误:
未捕获的TypeError:无法读取null
的属性“text”
这是关于实时预览的实时更新,就像在Stack Overflow上写一些内容一样。
function showPreview() {
var myStickieText = $("#txtarea").text();
myStickieText = myStickieText.replace(/\n/g, '<br />');
myStickieText = myStickieText.replace(/\[b\]/g, '<b>').replace(/\[\/b\]/g, '</b>');
myStickieText = myStickieText.replace(/\[i\]/g, '<i>').replace(/\[\/i\]/g, '</i>');
myStickieText = myStickieText.replace(/\[u\]/g, '<u>').replace(/\[\/u\]/g, '</u>');
myStickieText = myStickieText.replace(/\[quote\]/g, '<div class="group_myPage_quote">').replace(/\[\/quote\]/g, '</div>');
$("#livepreview").html(myStickieText);
}
<div class="text-container" style="float:left; width:70%;">
<textarea id="txtarea" name="txtarea" onkeypress="showPreview()"
style="width:100%; height:135px; resize: none;">
</textarea>
<div class="livepreview" id="livepreview" style="margin-top:15px;"></div>
</div>
(不,这不是重复,因为我需要修复,而不是一个全新的解决方案。)
答案 0 :(得分:1)
您没有正确获取文本区域的值。
它应该是val()
而不是text()
:
简单地替换
var myStickieText = $("#txtarea").text();
带
var myStickieText = $("#txtarea").val();
希望这有帮助!