我想知道如何在视图中创建一个链接(index.html.erb),它将执行js / jquery代码。
我正在使用https://github.com/akzhan/jwysiwyg并希望隐藏编辑器,但不确定如何操作。
现在我正在做
编辑 -
index.html.erb
<%= link_to "Hide", "#", onclick: "$('#email_body').hide();" %>
index.js.erb的
$('#wysiwyg').wysiwyg('clear');
由于
答案 0 :(得分:1)
您可以使用rails link_to helper:
link_to "Hide", "#", confirm: "Are you sure?", onclick: "$('#wysiwyg').wysiwyg('clear');"
更好的编码实践是将JavaScript代码与视图代码分开,例如:
link_to "Hide", "#", id: 'hide_editor'
然后,在一个单独的JavaScript文件中:
(function(){
$('#hide_editor').on('click', function(){
$('#wysiwyg').wysiwyg('clear');
});
})();
然后在关闭BODY标记之前放置一个指向此JS的链接。
更新:
我可以看到,此插件不支持禁用,您可以通过隐藏容器来禁用它:$('#wysiwyg').hide();
$('#wysiwyg').wysiwyg('clear')
清除编辑器的内容,正如我在文档中看到的那样。
UPDATE2: @iCyborg,根据您的代码,这是一个工作示例:http://jsbin.com/esuyij/1/
UPDATE3:我查看了这个编辑器,发现它的定制选项不够灵活。我建议你看看其他编辑吗?例如,这里有一个阵容: http://www.jquery4u.com/plugins/html5-wysiwyg/
答案 1 :(得分:0)
尝试:
<a href="#" onclick="$('#wysiwyg').wysiwyg('clear');" id="NOT_SURE_WHAT_ID_TO_GIVE">Hide Editor Controls</a>