好的,我以爲我知道我在做什麼,而我卻被互聯網上大量互相沖突的資源所困惑。什麼是將我的Rails 3應用程序從Prototype轉換爲jQuery的最新最有效的方法?
我有一個rails 3應用程序。我想從這個應用程序中完全取出原型,並只使用jQuery。其中一些代碼位於rjs文件中,但大部分代碼都位於項目控制器中的format.js {}方法中。
我發現this railscast,這使得它看起來像我可以做任何給定的動作如下:
def action_name
#do stuff
respond_to do |format|
format.js
#format other types
end
end
,然後把我想在一個名爲action_name.js.erb執行我的jQuery代碼。
但我想這樣做了以後,從我的應用程序移除原型(改變我的rails.js文件到jQuery的,但不包括在我的網頁標題中的prototype.js),我得到這個錯誤:
RJS error:
TypeError: $ is not a function
它爲什麼要調用rjs而不能識別我的jquery?我應該使用rjs模板而不是.js.erb文件?我以爲我從應用程序中刪除了原型 - 我錯過了什麼?
最重要的是,是否有一種明確的方式來完成從Prototype到jQuery的這種從2011年2月開始的Rails 3的最新轉換?我很困惑這樣做的最佳方式,以及我應該使用什麼(rjs文件或js.erb文件)。
非常感謝,如果需要,我可以編輯更多信息。
你確定jQuery被正確包含在你的輸出中嗎?例如:<%= javascript_include_tag「https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js」%> – 2011-02-10 19:05:25
是的 - 如果我查看我的頁面源代碼,包括一個jquery.min的本地副本,以及rails.js和application.js(按該順序) – Sarah 2011-02-10 19:09:17