Ruby on rails 如何让我的模态触发。将带有respond_的值传递给:js

Ruby on rails 如何让我的模态触发。将带有respond_的值传递给:js,ruby-on-rails,Ruby On Rails,我正试图从.js.erb文件触发我的模式。 这是我的控制器 teams\u controller.rb def edit @user = current_user @team = @user.teams.find(params[:id]) respond_to do |format| format.html format.js end end <% @teams.all.each do |team| %>

我正试图从.js.erb文件触发我的模式。 这是我的控制器

teams\u controller.rb

def edit
    @user = current_user
    @team = @user.teams.find(params[:id])

    respond_to do |format|
        format.html
        format.js
     end
end
    <% @teams.all.each do |team| %>
        <%= link_to 'edit', edit_team_path(team),  {:remote => true, 'data-toggle' =>  "modal", 'data-target' => '#modal-window'}  %>
    <% end %>
这是我的观点,我正在从中调用模式并传递团队的价值

users/show.html.erb

def edit
    @user = current_user
    @team = @user.teams.find(params[:id])

    respond_to do |format|
        format.html
        format.js
     end
end
    <% @teams.all.each do |team| %>
        <%= link_to 'edit', edit_team_path(team),  {:remote => true, 'data-toggle' =>  "modal", 'data-target' => '#modal-window'}  %>
    <% end %>

true,“数据切换”=>“模式”,“数据目标”=>“#模式窗口”}%>
这是我的团队/edit.js.erb

    <div class="modal fade bd-example-modal-md modal-8" id="modal-window" tabindex="-1" role="dialog" aria-labelledby="mysmallModalLabel" aria-hidden="true">
      <div class="modal-dialog modal-md">
        <div class="modal-content">
            <%= form_for @team do |f| %>
            <% end %>
        </div>
       </div>
    </div>

当我在users/show.html.erb中单击edit时,我从控制台收到此错误

VM27914:3 Uncaught SyntaxError: Unexpected token <
at processResponse (rails-ujs.self-817d9a8cb641f7125060cb18fefada3f35339170767c4e003105f92d4c204e39.js?body=1:246)
at rails-ujs.self-817d9a8cb641f7125060cb18fefada3f35339170767c4e003105f92d4c204e39.js?body=1:173
at XMLHttpRequest.xhr.onreadystatechange (rails-ujs.self-817d9a8cb641f7125060cb18fefada3f35339170767c4e003105f92d4c204e39.js?body=1:230)
VM27914:3未捕获的语法错误:意外标记<
在processResponse(rails ujs.self-817d9a8cb641f7125060cb18fefada3f35339170767c4e003105f92d4c204e39.js?body=1:246)
在轨道ujs.self-817D9A8CB641F712506CB18FEFADA3F35339170767C4E003105F92D4C04E39.js?主体=1:173
在XMLHttpRequest.xhr.onreadystatechange(rails ujs.self-817d9a8cb641f7125060cb18fefada3f35339170767c4e003105f92d4c204e39.js?body=1:230)

您已经在
.js
文件中编写了
HTML
。您需要将所有HTML标记用双引号括起来,然后将属性用单引号括起来


您需要使用Javascript返回一个字符串,其中包含您在
.js
文件中编写的edit.js.erb

中的所有内容。您需要将所有HTML标记用双引号括起来,然后将属性用单引号括起来

    <div class="modal fade bd-example-modal-md modal-8" id="modal-window" tabindex="-1" role="dialog" aria-labelledby="mysmallModalLabel" aria-hidden="true">
      <div class="modal-dialog modal-md">
        <div class="modal-content">
            <%= form_for @team do |f| %>
            <% end %>
        </div>
       </div>
    </div>

您需要使用Javascript返回一个字符串,其中包含edit.js.erb中的所有内容,这是一个简化的解释。但我的观点是,你必须纠正在
.js
文件中包含html的问题,这正是我的意思。我理解你的意思,我会尝试一下。谢谢。很高兴我能提供帮助。请你把我的答案标记为正确好吗?我梦想有一天在堆栈溢出上有1000点,lol=)这是一个简单的解释。但我的观点是,你必须纠正在
.js
文件中包含html的问题,这正是我的意思。我理解你的意思,我会尝试一下。谢谢。很高兴我能提供帮助。请你把我的答案标记为正确好吗?我梦想有一天在堆栈溢出上获得1000点,lol=)
    <div class="modal fade bd-example-modal-md modal-8" id="modal-window" tabindex="-1" role="dialog" aria-labelledby="mysmallModalLabel" aria-hidden="true">
      <div class="modal-dialog modal-md">
        <div class="modal-content">
            <%= form_for @team do |f| %>
            <% end %>
        </div>
       </div>
    </div>