【问题标题】:Adding a Nested Form with JQuery "Uncaught SyntaxError: Unexpected token ILLEGAL"使用 JQuery “Uncaught SyntaxError: Unexpected token ILLEGAL”添加嵌套表单
【发布时间】:2014-04-25 00:11:09
【问题描述】:

我正在使用 Rails 3 和 JQuery,并尝试通过单击按钮将嵌套表单附加到我的主表单中。如果没有 javascript,表单和嵌套表单可以正常工作。我希望仅在用户单击按钮时才添加嵌套表单。他们还可以通过多次单击按钮来添加许多嵌套表单。

在另一个线程上,有人说要使用 ajax 调用“onclick 正在浏览器中执行,因此您将无法在其中使用 erb。您需要进行 ajax 调用(.load 是方便的快捷方式)到服务器,您可以在其中使用 erb 渲染部分以获取您需要返回的 html。”

有谁知道我该怎么做,或者我什至应该怎么做?

我的 javascript 文件就是这样..

$(document).ready(function() {
    $("#add-family-button").click(function(){
    var form = "<div class='form-group col-xs-3'>
      <%= f.fields_for :users, @new_user do |ff| %>
        <%= label_tag :first_name %>
        <%= ff.text_field :first_name, placeholder: 'First Name' %>
        <%= label_tag :last_name %>
        <%= ff.text_field :last_name, placeholder: 'Last Name' %>
      <% end %>
    </div>";
        $("#child-forms-div").append(form);
    });
 });

我的表格是

<%= form_for(@family) do |f| %>
  <form class = 'form-horizontal' role = 'form'>
    <div class='form-group'>
      <%= f.label :name %>
      <%= f.text_field :name, placeholder: @family.name %>
    </div>
    <button type="button" id="add-family-button" class="btn btn-warning">Add Family Member</button>

    <div id="child-forms-div" class='form-group'>
    </div>
    <div class='actions'>
      <%= f.submit %>
    </div>
  </form>
<% end %>

Jquery 适用于所有其他功能。 错误是针对 javascript Line 3 的

var form = "<div class='form-group col-xs-3'>

Uncaught SyntaxError: Unexpected token ILLEGAL

【问题讨论】:

    标签: javascript jquery ruby-on-rails-3 forms nested-forms


    【解决方案1】:

    如果您要创建多行字符串,则需要在每行的末尾放置一个 \。否则,请将您的循环代码全部放在一行中。

    【讨论】:

    • 我将它全部循环在一行中,单击时未显示,但显示为 ETC html div 被正确读取,但 ruby​​ 不是。
    猜你喜欢
    • 1970-01-01
    • 2012-09-12
    • 1970-01-01
    • 1970-01-01
    • 2012-11-20
    • 2012-01-30
    • 2011-12-01
    • 1970-01-01
    相关资源
    最近更新 更多