Rails rails_kindeditor 的问题

hz_qiuyuanxin · 2013年02月04日 · 最后由 qinjker 回复于 2013年11月21日 · 5302 次阅读

我找了个 gem,名为rails_kindeditor

但是尝试获取它的值的时候,无论是用 form 还是尝试用 jquery 去获取都不行。

查看了它生成后的 html 源代码,还是没有找到方法。

请有使用过的人指点一下!!

插件源代码:https://github.com/Macrow/rails_kindeditor

还是自己解决了,在此分享一下 这是我的 form 表单

<title><%= content_for :title do %>新建文章<% end %></title>
<%= javascript_include_tag 'kindeditor' %>
<%= stylesheet_link_tag 'web/article/new' %>
<%= javascript_include_tag '/plugin/jquery.form.js' %>

<script type="text/javascript" charset="utf-8">
  $(function(){
    KindEditor.ready(function(K){
      var contentEditor = K.create("textarea[name='content']",{
        height:400,
        width:"100%",
        allowFileManager:true,
        // 文件上传提交路径
        uploadJson:"/kindeditor/upload",
        fileManagerJson:"/kindeditor/filemanager",
        // 下面这两行最重要了,就是用来同步数据的
        afterCreate: function(){ this.sync(); },
        afterBlur: function(){ this.sync(); }
      });
    });
  });
</script>

<div class='placeholder'></div>
<div class='page-container'>
  <form id='article'>
  <div class='title'><input name='title' placeholder='请填写标题...' /></div>
  <!--<div class='content'><%= kindeditor_tag :content, '', :height=>400 %></div>-->
  <div class='content'><textarea name='content'></textarea></div>
  <div class='submit'><input type='submit' value="保存"/></div>
  </form>
  <!--<%= form_for @article, { :url => "/web/article", :method => :post } do |f| %>-->
  <!--  <div class='title'><%= f.text_field :title, :class=>"title" %></div>-->
  <!--  <div class='content'><%= f.kindeditor :content, :height=>400 %></div>-->
  <!--  <div class='submit'><%= f.submit '保存' %></div>-->
  <!--<% end %>-->
</div>

取得数据的方法,自己可在 console 里试试

$("textarea[name='content']").val();

在显示内容时又遇到了问题,直接这样

<div class='content'><%= @user1_safe %></div>

这样就能显示文章的内容啦,嘿嘿

你可能和我遇到同样的问题: where is view helper?

#1 楼 @hz_qiuyuanxin

我已经对代码进行了更新,可以满足你的需求,详见: https://github.com/Macrow/rails_kindeditor/issues/23

rails_kindeditor 的附件部分做的不好,不喜欢 另外放弃 form_helper 不是明智的选择,我修改了那个 gem 的 helper https://github.com/jasl/start_up/blob/master/lib/form_helpers/kindeditor.rb 同时在页面需要引入https://github.com/jasl/start_up/blob/master/app/assets/javascripts/kindeditor.js.coffee

<%- @comment ||= @post.comments.build -%>
<%= form_for([@comment.commentable, @comment]) do |f| -%>
  <fieldset>
    <legend>Comment post</legend>
    <div class="row row-grid">
      <div class="span8 offset2">
        <%= print_error_messages @comment -%>
      </div>
    </div>
    <div class="control-group">
      <%= f.label :body, :class => 'control-label' -%>
      <div class="controls">
        <%= f.kindeditor :body, :height => 100, :items => %w(fontname fontsize | emoticons image link) %>
      </div>
    </div>
    <div class="form-actions" >
      <%= f.submit :class => 'btn btn-primary' -%>
    </div>
  </fieldset>
<% end %>

怎么把 rails_kindeditor 集成到 Redmine 里面,替换原有的可视化编辑器?

@Macrow 我能通过 rails 的 ajax 异步加载 kindeditor 吗?

@qinjker 你好,ajax 本身和 rails 没关系,你要用 ajax 加载 kindeditor 是没有问题的,kindeditor 官方文档也有说明,在 turbolinks 下加载实际也是属于动态加载,可以参考文档里 turbolinks 下加载的说明。

或者你把加载的情况进行说明。

@Macrow 谢谢 我看到那个文章了!已经 ok 了!

需要 登录 后方可回复, 如果你还没有账号请 注册新账号