0

我在我的 rails 应用程序中使用bootstrap-wysihtml5-rails,在我尝试使用通配符选择器之前一切正常。

例如:

Javascript

$('[id*=some-textarea]').wysihtml5();

HTML

<textarea id="some-textarea1" placeholder="Enter text ..."></textarea>
<textarea id="some-textarea2" placeholder="Enter text ..."></textarea>

不适用于 Chrome 版本 22.0.1229.94,控制台显示“未捕获错误:NOT_FOUND_ERR:DOM 异常 8”

Safari 仅在 some-textarea1 上显示所见即所得的控件。

当我明确时,它们工作正常

$('#some-textarea1').wysihtml5();
$('#some-textarea2').wysihtml5();

但是我的rails表单上的textarea的数量是动态的,所以我真的很想使用通配符,如果可能的话?

这是 wysiwyg.js 的问题吗?作为一个简单的css背景更改工作......

这是一个例子:http: //jsfiddle.net/8PBwA/3/

4

2 回答 2

1

我将在这里(从快速浏览插件源代码)出发,并说这个 JS 插件不支持将集合作为参数。

您可以使用for循环。

$('[id*=some-textarea]').each(function() {
     $(this).wysihtml5();
});
于 2012-10-20T02:25:17.670 回答
0

尝试将您的选择器用双引号括起来。检查是否有帮助

$('[id*="some-textarea"]').wysihtml5();

您也可以尝试为所有这些文本区域分配一个类..

<textarea id="some-textarea1" class="w5text" placeholder="Enter text ..."></textarea>
<textarea id="some-textarea2" class="w5text" placeholder="Enter text ..."></textarea>

$('.w5text').wysihtml5();

或者

var count = 30;

for(var i = ;i<= count ; i++){
   $('#some-textarea'+ count).wysihtml5();
}
于 2012-10-20T02:16:47.273 回答