拜托,请问您对Ajax的帮助。我已经为这个问题找到了几个解决方案,但没有一个能够解决问题。
每当我尝试使用ROR代码更新DIV内容时,它会显示代码,而不是结果。我隐藏了与我的问题无关的代码,以保持问题清晰,易于理解。
在我的HTML上,我有这个链接:
<%= link_to 'Adicionar lançamento (+)', '#', id: "add-lancamento" %>
在我的JS文件中,我有:
$('#add-lancamento').click(function(event){
$('#dialog').html("<%= escape_javascript( render(:partial => 'form') ).html_safe %>");
event.preventDefault();
});
我知道链接正在运行,因为#dialog中的内容正在发生变化。 但新内容是:
<%= escape_javascript( render(:partial => 'form').html_safe ) %>
我正在使用“escape_javascript”和“html_safe”,已经更改了“”for“”,我仍然得到相同的结果。它显示代码而不处理它。它不会呈现部分。
我找到了几个与不同版本的Rails相关的解决方案,所以这些是我的系统细节:
Ruby version 1.9.3 (i386-mingw32)
RubyGems version 1.8.16
Rack version 1.4
Rails version 3.2.8
JavaScript Runtime JScript
Active Record version 3.2.8
Action Pack version 3.2.8
Active Resource version 3.2.8
Action Mailer version 3.2.8
Active Support version 3.2.8
Middleware
ActionDispatch::Static
Rack::Lock
#<ActiveSupport::Cache::Strategy::LocalCache::Middleware:0x39fdc08>
Rack::Runtime
Rack::MethodOverride
ActionDispatch::RequestId
Rails::Rack::Logger
ActionDispatch::ShowExceptions
ActionDispatch::DebugExceptions
ActionDispatch::RemoteIp
ActionDispatch::Reloader
ActionDispatch::Callbacks
ActiveRecord::ConnectionAdapters::ConnectionManagement
ActiveRecord::QueryCache
ActionDispatch::Cookies
ActionDispatch::Session::CookieStore
ActionDispatch::Flash
ActionDispatch::ParamsParser
ActionDispatch::Head
Rack::ConditionalGet
Rack::ETag
ActionDispatch::BestStandardsSupport
Application root D:/sites/ror/buf4
Environment development
Database adapter sqlite3
Database schema version 20121224183551
提前致谢,
答案 0 :(得分:0)
你的javascript文件是否扩展名为.js.erb?假设您正在使用资产管道,以便能够执行此操作
<%= escape_javascript( render(:partial => 'form') ).html_safe %>
在你的javascript文件中,如果有一个.js.erb扩展名