2012-07-31 104 views

回答

1

據我所知,你不能。 但是,你可以得到所見即所得的編輯器,你可以使用項目符號列表和更多(如圖像,粗體,斜體等)。這些所見即所得編輯器是完全可定製的,所以你可以只啓用你需要的選項。 其中最著名的是: CKEDITOR:http://ckeditor.com/ TinyMCE的:http://www.tinymce.com/

J. BENOIT。

6

你不能這樣做,但有另一種方法。刪除textarea。

'<section id="textarea" contenteditable="true"> 
<ul> 
    <li>List item here</li> 
    <li>List item here</li> 
    <li>List item here</li> 
    <li>List item here</li> 
</ul> 

</section>' 
+0

這是什麼魔法?我如何將它提交給服務器? – OneHoopyFrood 2016-04-21 20:26:28

+0

找到了! http://stackoverflow.com/q/6247702/1795429 – OneHoopyFrood 2016-04-21 20:43:37

+0

請注意,contenteditable允許用戶執行諸如將豐富的html文本粘貼到列表項目中的操作。對於許多人來說,這可能是一種不必要的副作用。 – 2017-06-20 04:25:47

0

只需使用十六進制unicode值:\ u2022。所以,你可以添加子彈新線以這種方式:

$textarea.val($textarea.val().replace(/\n/g,"\n\u2022").replace(/\r/g,"\r\u2022"))

1

這做這項工作非常漂亮。將BULLET設置爲您喜歡的任何字符代碼。

<head> 
    <script> 
     var CRLF = 10; 
     var BULLET = String.fromCharCode(45); 

     function Init() { 
      if (txt.addEventListener) txt.addEventListener("input", OnInput, false); 
     } 

     function OnInput(event) { 
      char = event.target.value.substr(-1).charCodeAt(0); 
      nowLen = txt.value.length; 

      if (nowLen > prevLen.value) { 
       if (char == CRLF) txt.value = txt.value + BULLET + " "; 
       if (nowLen == 1) txt.value = BULLET + " " + txt.value; 
      } 
      prevLen.value = nowLen; 
     } 
    </script> 
</head> 

<body onload="Init();"> 
    <h4>Automatic bullets in a text box</h4> 
    <textarea id="txt" rows="15" cols="40"></textarea> 
    <input type="hidden" id="prevLen" value="0"/> 
</body> 
+0

這很好,只需從textarea html中刪除多餘的oninput =「」屬性,否則你會調用它兩次。 – harvest316 2016-10-14 02:42:12

+0

Thanks @ harvest316,我從代碼中刪除了多餘的oninput =「」。 – CodeCabbie 2016-10-14 14:46:56

0

簡單使用下面的字符&#9679的子彈:

<textarea rows="6" cols="20"> 
    &#9679 Item1 
    &#9679 Item2 
    &#9679 Item3 
    &#9679 Item4 
    &#9679 Item5 
    </textarea>