2015-10-04 75 views
0

我想要的 - 一个按钮(onclick)将选定文本添加到文本框(名称为“body”)。我希望它有一个换行符和大于号的前缀,最后是两个换行符/一个段落。将所选文本添加到带有附加信息的文本框

我当前的代码:

function 
addtext() { 
var newtext = '\uA' '\u3E' document.getSelection() '\uA'; 
this.email.comments.value += newtext; 
location.href="#emailme"} 

基本上,选择文本,点击按钮后,所选择的文本添加到窗体具有一些变化。实际发生的事绝对没有。

备注:NO JQUERY。 JQuery的答案将被忽略。纯粹的JS只。

+0

你登录什么document.getSelection在你的代码返回? – Guillermo

回答

0

试试这个

var textBox = document.getElementById("text-box"); // replace the id by your text box identifier 

var addTextButton = document.getElementById("add-text-button"); // replace the id by your button identifier 

function addText() { 
    // \u000a is escape sequence for line feed 
    var newText = '\u000a>' + document.getSelection().anchorNode.textContent + '\u000a\u000a'; 
    // add any extra data to new text here like newText += extraData 
    textBox.value += newText; 
} 

addTextButton.addEventListener("click", function(event) { 
    event.preventDefault(); 
    addText(); 
}); 
+0

它似乎没有工作。我已将其上传到https://dl.dropboxusercontent.com/s/fr4bgphk2pjga7z/form20.html以供进一步测试。 谷歌浏览器\t 45.0.2454.101(正式版本)M(32位) 修订\t 3b3c00f2d95c45cca18ab944acced413fb759311-裁判/分支头/ 2454 @ {#502} OS \t的Windows 眨眼\t 537.36(@ 3b3c00f2d95c45cca18ab944acced413fb759311) 的JavaScript V8 \t 4.5.103.35 – dizzyzane

+0

在关闭'body'标记之前将'script'标记移动到页面底部,当脚本运行时没有加载'add-text-button'元素,所以没有附加事件处理程序,或者如果出于某种原因不能这么做,请将脚本内容放入一个函数中,并将其附加到像'window.onload = functionName'这样的'onload'事件中。 – zola

+0

现在正在工作! 我真的不擅长脚本哈哈... – dizzyzane