我的設置:Rails的3.0.9,1.9.2紅寶石和jQuery 1.6.2jQuery的崗位到Rails
我有一個表格,顯示多張照片和評論的用戶,我希望實現在線評論。
<div id="newsfeed">
<div>
<div class="photo_title">Summer 2011</div>
<div class="newsfeed_photo">
<a href="..." /></a>
</div>
<textarea class="comment_box">Write a comment...</textarea>
</div>
<div>
<div class="comment_title">Seeing a movie</div>
<textarea class="comment_box">Write a comment...</textarea>
</div>
我想在用戶點擊textarea字段中的回車鍵時提交一個AJAX帖子。下面是JavaScript的(不完全)是我迄今爲止
$('#newsfeed').delegate('.comment_box', 'keydown', function (event){
event.preventDefault();
$.post('/sub_comments', ...);
});
我使用delegate
方法,因爲<div id='newsfeed'>
內容可能與其他AJAX調用所取代。我需要的是jQuery post
方法的語法,假設我需要傳遞一些形式參數,如說photo_id
等。假設我有一種方法來訪問params的值,調用params創建params的語法是什麼Rails的指望他們
下面是標準的Rails位
sub_comments_controller.rb
def new
@sub_comment = SubComment.new
respond_to do |format|
format.html # new.html.erb
format.js
end
end
此外,我不希望使用每一個行內註釋我可以添加常用<%= form_for(@sub_comment, :remote => true) do |f| %>
。我也看了Ryan Bates的railscast,但代碼看起來過時了。
,你會介意解釋你爲什麼選擇不使用'respond_to'塊嗎?謝謝! –
真的很有幫助,你節省了我的時間,@ cmpolis,非常感謝 –
@MarioZigliotto他這樣做只是因爲它寫得更短。結果是他無法在這個動作中呈現html,只有json。 – DonPaulie