[英]jQuery line function is not defined
我在這行$(this).before($(this).data('daw_preguntaes').replace(regexp, time));}
有一個TypeError: $(...).data(...)
。 我正在使用Railscast 196,但是此功能不會加載我要顯示的新字段。 我不知道要在data(fields)
放入什么
jQuery ->
$('form').on 'click', '.add_fields', (event) ->
time = new Date().getTime()
regexp = new RegExp($(this).data('id'),'g')
$(this).before($(this).data('fields').replace(regexp,time))
event.defaultPrevented()
瀏覽視圖
<%= f.fields_for :questions do |builder| %>
<%= render 'questions_fields', f: builder %>
<% end %>
<%= link_to_add_fields "New question",f,:questions %>
問題檢視
<fieldset>
<%= f.label :content, 'Question' %>
<%= f.text_area :content %>
<%= f.check_box :_destroy %>
<%= f.label :_destroy, "Delete" %>
</fieldset>
在RailsCasts#403中,Ryan使用CoffeeScript文件中的編輯代碼。 我將_questions_fields命名為_question_fields
CoffeeScript
$(document).on 'click', 'form .remove_fields', (event) ->
$(this).prev('input[type=hidden]').val('1')
$(this).closest('fieldset').hide()
event.preventDefault()
$(document).on 'click', 'form .add_fields', (event) ->
time = new Date().getTime()
regexp = new RegExp($(this).data('id'), 'g')
$(this).before($(this).data('fields').replace(regexp, time))
event.preventDefault()
幫手
def link_to_add_fields(name, f, association)
new_object = f.object.send(association).klass.new
id = new_object.object_id
fields = f.fields_for(association, new_object, child_index: id) do |builder|
render(association.to_s.singularize + "_fields", f: builder)
end
link_to(name,'#', class: "add_fields", data: {id: id, fields: fields.gsub("\n","")})
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.