2013-02-03 16 views
0

我有nicedit得到areatext作为编辑器。为什么文本添加到页面刷新areatext,而不是直接

<select id="greetings" name="greetings"> 
     <option value="" selected>Select one </option> 
     <option value="1" onClick="addGreeting('text1'); return false;">text1</option> 
     <option value="2" onClick="addGreeting('text2'); return false;">text2</option> 
     <option value="3" onClick="addGreeting('text3'); return false;">text3</option> 
    </select> 
<textarea name="message" id="message" cols="50" rows="8" ></textarea> 

因此,当用户选择选项将自动插入到文本区域。

这里的JavaScript代码

bkLib.onDomLoaded(nicEditors.allTextAreas); 

    function addGreeting(text) { 
text = ' ' + text + ' '; 
if (document.sc_form.message.createTextRange && document.sc_form.message.caretPos) { 
    var caretPos = document.sc_form.message.caretPos; 
    caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text; 
    document.sc_form.message.focus(); 
} else { 
document.sc_form.message.value += text; 
document.sc_form.message.focus(); 
} 
    } 

OBS没有niceditor一切都运行完美,所选择的选项将被直接插入。 但是只有当我刷新页面时才插入它。

而我希望文本将被插入而不刷新。

如果有人有兴趣有关脚本的顺序这里是我的订单

<script src="submit.js" language="JavaScript" type="text/javascript"></script> 
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> 
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/redmond/jquery-ui.css" rel="stylesheet" type="text/css"/> 
<script type="text/javascript" src="include/nicEdit-latest.js"></script> 

还有什么让我知道,我将它插入,感谢您抽出宝贵的时间与我的代码。

编辑:

这里我DEMO JSFIDDLE //这难道不是与编辑器插件工作。

这个DEMO JSFIDDLE //这个作品,未经插件

- 我认为这个问题是bkLib.onDomLoaded这就是为什么,也许文本页面加载(刷新)插入后,关于如何取代它的任何建议?

+0

你可以插入新的按钮进入nicedit很容易地你应该考虑是不是 – mikakun

+0

[nicedit](http://nicedit.com /)是一个脚本,它将textarea转换为编辑器,我不能在编辑器中添加按钮。 –

+0

niecdit是一个脚本,我在我的项目中使用&它是真正容易添加cutom按钮,它读取api,做你的研究http://wiki.nicedit.com/w/page/516/Creating%20a %20Plugin也可以是任何HTML元素nicedit的作品不只是在文字区域... – mikakun

回答

0

没有与nicedit没有问题

nicedit所见即所得的100%的修改在实例的DOM,隐藏你的textarea或任何HTML元素进行编辑

  • 任你学nicedit API和你创建一个自定义按钮/下拉菜单来追加你的文字

  • 要么你在改变事件时销毁实例(.removeInstance()),将你的文本追加到你的可编辑然后重新实例化编辑器

干净的解决方案是第一位的,懒惰的解决方案第二