如何为选定的文本添加前缀和后缀

问题描述:

我正在尝试制作一个简单的所见即所得编辑器。如何为选定的文本添加前缀和后缀

当选择文本/从<textarea> highted,并与BTN ID按钮被点击,JS会添加前缀<a href=''>和后缀</a>

这就是我想出来的。但它不适用于jsfiddle。

//JS 
    <script type="text/javascript"> 
     function markupEd() { 
      var textArea = document.getElementById('textInput').value; 
      var i = 0; 
      var textArray = val.value.split("\n"); 

      for (i = 0; i < textArray.length; i++) { 
       textArray[i] = "<a href=''>" + textArray[i] + "</a>"; 
      } 
      val.value = textArray.join("\n"); 
     } 
    </script> 


    <input type="button" id="btn" value=" <a> " onclick="markupEd();"> 
    <textarea id="textInput"></textarea> 
+0

它不会...你会得到一个错误....哪里呢'VAL '来自? 'val.value.split(“\ n”);' – ManseUK 2012-03-06 11:27:37

+0

@ManseUK我从我从两个不同的'input'标记中添加前缀值和后缀值时得到的代码。然后它将显示在'textarea'标签上,并且来自另一个'textarea'的文本。 – vurquee 2012-03-06 11:32:56

+0

@ManseUK但是这一次,我的问题是按钮如何识别选定的文本,以及添加我想要的默认前缀和后缀,当点击按钮时。 – vurquee 2012-03-06 11:34:21

你的JS函数看起来good..I不认为你需要的任何值传递给你的函数

<script type="text/javascript"> 
     function markupEd() { 
      var textArea = document.getElementById('textInput').value; 
      var i = 0; 
      var textArray = textarea.split("\n"); 

      for (i = 0; i < textArray.length; i++) { 
       textArray[i] = "<a href=''>" + textArray[i] + "</a>"; 
      } 
      document.getElementById('textInput').value = textArray.join("\n"); 
     } 
    </script>  

    <input type="button" id="btn" value=" <a> " onclick="markupEd();"> 
    <textarea id="textInput"></textarea> 
+0

是的,先生。感谢您指出了这一点。就像你说的那样编辑了代码。我的问题也改善了。 – vurquee 2012-03-06 11:25:39