gpt4 book ai didi

javascript - 添加列表项客户端

转载 作者:行者123 更新时间:2023-11-30 06:06:55 24 4
gpt4 key购买 nike

我会马上说我是 Rails 的完全初学者,所以这可能是我遗漏的明显东西。

我有一个用于编辑无序 ( <ul> ) 问题列表的 Web 表单。每个问题都是列表中的一个项目。每个问题都有一个用于问题文本的文本字段和一个用于指示问题类型的下拉列表(多项选择、对/错等)。

我还想让用户能够添加新问题,方法是单击链接并显示新的文本框和下拉列表,作为列表中的项目。

我还没有找到一个真正干净的方法来做到这一点,所以我从各种教程中将它拼凑在一起。我是否缺少更好的方法?

这里是 edit.html.erb 的代码:

<h1>Editing Survey: <%= "#{@survey.name}" -%></h1>

<% form_for @survey, :url => {:action => 'update', :id => params[:id]} do |survey_form| %>
<h2>Title: <%= survey_form.text_field :name %></h2>
<ol class='question_list'>
<% for @question in @survey.questions %>
<% fields_for "question[]" do |f| %>
<li>
<%= f.text_field :q_text %><br>
<%= select(:question, :q_type, { "True/False" => "T", "Multiple Choice" => "M"}) %><br>
</li>
<% end %>
<% end %>
</ol>
<%=
link_to_function "Add another question",
update_page { |page|
page.insert_html :bottom,
'blank_question',
(render :partial => 'blank_question', :object => @question )
}

%>
<%= submit_tag "Update" %><br>
<% end %> <% "End of form_for" %>

<%= link_to "Back", {:action => 'list' } %>

我创建了另一个名为 _blank_question.erb 的 erb 文件,这是我希望在他们单击“添加另一个问题”链接时包含的元素:

<li>
<%= text_field :question, :id, :size => 25 %><br>
<%= select(:question, :q_type, { "True/False" => "T", "Multiple Choice" => "M"}) %><br>
</li>

问题是当我点击“添加另一个问题”链接时,弹出窗口中出现以下错误。

RJS error:

TypeError: Object function Element() { [native code] } has no method 'insert'[native code] } has no method 'insert'

相当多的谷歌搜索没有找到任何有用的结果。知道我哪里出错了吗?

最佳答案

如果您使用的 Rails 版本 > 2.3(如果您不使用,我推荐您使用),您可以观看两个截屏视频:

准确说明您想做什么。第二部分涉及 Ajax 部分,但我真的建议同时观看第一部分和第二部分,因为 Ryan Bates逐渐构建它,它真的会帮助你澄清很多事情。

一般来说,Railscasts站点是了解许多简单或复杂的 Rails 内容的最佳途径之一。

关于javascript - 添加列表项客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3799525/

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