gpt4 book ai didi

ruby-on-rails-3 - 轨道 3 : Ajax and the <%= escape_javaScript(item) %>

转载 作者:行者123 更新时间:2023-12-01 03:24:39 27 4
gpt4 key购买 nike

*(请注意,一切都在 Ajax 之外完美运行。可提交类可在更改时提交表单)

所以在这里我设置了一个基本示例,由于某种原因我无法让 <%= escape_javaScript(item) %> 显示在表单提交上。为了更好地解释,我将仅显示我的相关代码。

index.html.erb

<% @contacts.each do |contact| %>
<%= form_for contact,:remote => true do |f| %>
<div class="editField">
<%= f.collection_select :agent_id, get_user_list("agent"), :id, :full_name, {:include_blank => 'None assigned'},:class => "submittable" %>
</div>
<% end %>
<div id="agent2">
<%= contact.agent_id %>
</div>
<% end %>

contact_controller.rb

def update
@contact = Contact.find(params[:id])


respond_to do |format|
if @contact.update_attributes(params[:contact])
format.js { render }
end
end
end

更新.js.erb

$('#agent2').html("<%= escape_javaScript(contact.agent_id) %>");

完成此设置后,我没有得到任何响应或对 (div id agent2) 进行更改,但如果我使用此代码有 update.js.erb

$('#agent2').html("something");

文本“something”替换当前的 contact.agent_id

我很困惑为什么它不能正常工作。我使用 Rails 3.0.3 和 ruby​​ 1.8.7 (2010-08-16 patchlevel 302) [i686-darwin10],并使用 Jquery。

最佳答案

您调用escape_javascript有什么特殊原因吗? helper ?看来您只是想要 agent_id值在#agent2内分区是这样吗?您是否尝试过 $('#agent2').html("<%= contact.agent_id %>");

通常,当我使用 escape_javascript 时辅助方法我将传入部分内容,因此调用将类似于:

$('#agent2').html("<%= escape_javascript( render(:partial => 'partial_name') ) %>");

希望有帮助!

关于ruby-on-rails-3 - 轨道 3 : Ajax and the <%= escape_javaScript(item) %>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6587734/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com