簡體   English   中英

帶有ajax的動態內容(ruby on rails)

[英]dynamic content with ajax (ruby on rails)

我正在使用Rails和jquery,我需要一個帶有ajax的動態內容。

但我不知道如何獲取當前的用戶ID

例如,網址是www.mywebsite.com/users/ 20

在我的javascript文件中,我需要用戶ID(20)

$.get("/users/<%= **20** %>.json", function(data)
      {

      }, "json");

在此先感謝您的幫助。


還有另一種方法嗎?

通常我在頁面的某處放置一個帶有idhidden字段,我可以在javascript文件上使用$("#user_id")輕松訪問,然后請求將是這樣的:

var id = $("#user_id").val();
$.get("/users/"+id+".json", function(data) { }, "json");

您可以將rails變量值分配給視圖文件中的javascript變量,如

“<%= javascript_tag”var userId = #{@current_user.id};“%>”

並在任何地方訪問js文件中的變量。

$.get("/users/<%= params[:id] %>.json", function(data)
  {

  }, "json");

應該做的伎倆。

將代碼段包含到.erb文件中或使用此文件創建.js.erb部分。

很多選擇:

  1. 如果您有一個具有id的當前用戶對象( 注意 :這必須位於以.js.erb結尾的文件中):

    $.get("/users/<%= @current_user.id %>.json", function(data){...}, "json");

  2. 如果您不想使用.js.erb文件,但仍需要在頁面的某處設置值,則使用id值設置數據屬性或隱藏輸入。

  3. 如果你在url中有id值(就像你當前的url看起來像www.mywebsite.com/users/20並且你希望GET請求使用20作為值),你可以使用document.url或者window.location.href和一些字符串操作來獲取id。

嘗試<%= escape_javascript(params [:id])%>我不完全確定escape_javascript是否必要或將有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM