jQuery实时预览

时间:2016-02-27 20:39:49

标签: javascript jquery html

我遇到了问题,因为我收到了错误:

  

未捕获的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>

不,这不是重复,因为我需要修复,而不是一个全新的解决方案。)

1 个答案:

答案 0 :(得分:1)

您没有正确获取文本区域的值。 它应该是val()而不是text()

简单地替换

var myStickieText = $("#txtarea").text();

var myStickieText = $("#txtarea").val();

希望这有帮助!