2011-06-19 51 views
0

我有一些文字区域:我可以从jwysiwyg中获取原始textarea ID吗?

<textarea id="temp1">Hello</textarea> 
<textarea id="temp2">Hello</textarea> 
... 

,我初始化jwysiwyg他们:

$('#temp1').wysiwyg(); 
$('#temp2').wysiwyg(); 

我也有一个自定义按钮,保存内容。现在我怎样才能得到原始的textarea dom元素? (我需要jwysiwyg这里的几个occurances区分。)

function Wysiwyg() { 
    this.controls = { 
    save: { 
     exec: function() { 
     // Magically find the id of the original textarea plx. 
     ... 

谢谢...

+0

你必须明白,你只能在文档中使用ID一次,你不能设置多个临时#在文本区域,你必须使用一个类为该.... – John

+0

我结束了添加'id'作为jWysiwyg的一个选项。这不是超级优雅,但它现在会做。 –

回答

0
$('#temp').wysiwyg($(this)); 

function Wysiwyg(textarea) { 
    this.controls = { 
    save: { 
     exec: function() { 
     $(textarea).val(); //return selected text area value 
     // Magically find the id of the original textarea plx. 
     ... 

当您运行所见即所得的功能,通过发送所选元素的功能和调用如果你有多个文本区域,你可以把这个应用css,如果你使用$(this),那么你必须记住你只能在文档上使用id一次。点击项目的引用,那么你不需要通过任何方式调用它其他的东西:

<textarea class="tArea">Hello</textarea> 
<textarea class="tArea">Hello</textarea> 
$('textarea.tArea').wysiwyg($(this)); 
+0

嗨。我用自己的例子让自己的例子更清晰。关于传递$(this)作为一个变量:jwysiwyg期望变量是方法调用,否则它会抛出错误,所以这恐怕是行不通的。我希望有一些聪明的jQuery选择器可以找到textarea节点。 –

+0

so parse $(this).attr('id');通过$(“textarea#”+ textarea).value();来传递元素的id(一个字符串)。 – John

相关问题