0

Railsバージョン3.0.9とjqueryを使用しています。問題は、リンクをクリックしてもdivが更新されないことです。「表示」と「時間」の2つのアクションがあります。初期位置-表示します。コントローラコードは(ajax_controller.rb)でした:

class AjaxController < ApplicationController
  respond_to :html, :js

  def show  
  end

  def time
  end
end

div内のリンクをクリックすると、読み込み時間が必要になります。

次のコード(show.html.erb):

<h1>Ajax show</h1>
Click this link to show the current 
<%= link_to "time", :url=>{:action => "time"}, :remote => true%>.<br/>
<div id='time_div'>
</div>

また、time.html.erbファイルとtime.js.erbファイルがあります。コード(time.js.erb)に従ってください:

$('#time_div').html('<%= escape_javascript(render :text => "The current time is #{Time.now.to_s}") %>');

しかし、何も起こりません。jqueryが接続されました。何が問題なのか?

4

2 に答える 2

1

ルートに問題がある可能性があります。あなたのroutes.rbにこのようなものがありますか?

RAILS_ROOT / config / routers.rb

get '/time', :to => 'ajax_controller#time', :as => :ajax_time

次に、このようなレールヘルパーを使用してURLを呼び出す必要があります

<%= link_to "time", ajax_time_path, :remote => true %>
于 2012-05-03T13:45:08.207 に答える
0

ログを見て、time.js.erbが実際にレンダリングされているかどうかを確認できます。代わりにHTMLバージョンがレンダリングされる可能性があります。その場合は、HTMLバージョンを削除してください。

于 2012-05-03T13:24:10.743 に答える