ROR學習筆記(33)——AJAX初實現

終于下定決定使用AJAX了。
核心原則是在提交表單的時候,請求JS格式的數據,接著controller就會去找對應的js文件,然后再把js代碼返回到view,實現AJAX。

  1. 在views中,只需要加一個參數,請求的時候,就會請求JS的數據
<%= link_to "增加分類", new_group_path, class:"btn btn-link", remote: true %>
  1. 在controller中,用下面的代碼來替代redirect_to。值得注意的是,render '_error'這行代碼會去調用_error.js文件
  def create
     @group = current_user.groups.build(name:group_params[:name])
     if @group.save
      respond_to do |format|
        format.js
      end
     else
      render '_error'
     end
  end
  1. 然后在js文件中寫js代碼,當然了,可以用render來把html代碼渲染到js代碼中去,使用"j(<%= render .... %>) "來實現。
    app/views/groups/new.js.erb
var xx = $("input").parent().parent();
xx.prev().show();
xx.remove();
$('#groups').prepend("<%= j render(partial: 'group_new', locals: {group: @group}) %>")

4、最后就是寫js代碼(可以用jquery)來實現view層的表現了,根據你的需求來寫。

因為從沒接觸過js,完全是一邊看資料一邊寫,所以很痛苦,大部分時間都在處理頁面的表現。并且代碼不簡潔,同時重復的代碼也很多,代碼的組織幾乎也沒有,以后需要好好了解js才行。

用了AJAX才發(fā)現,異步真的是好東西啊,能用就用。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容