Rails 中有没有办法计算已添加到表单中的嵌套字段的数量?
我目前有一个表单,允许用户添加或删除嵌套属性。
代码与Railscast http://railscasts.com/episodes/196-nested-model-form-revised基本相同只是根据我的要求略有改变(不同的 Controller 和型号名称)。
我想要做的是计算当前表单中的嵌套属性集的数量。有没有办法在 Rails 中做到这一点,或者我使用 jQuery 会更好吗?
我需要能够访问 View 中的值。
非常感谢任何帮助。如果您需要查看代码,请告诉我。
jQuery ->
$('form').on 'click', '.remove_fields', (event) ->
count--
$(this).prev('input[type=hidden]').val('1')
$(this).closest('.panel').hide()
$('#price').text(count)
event.preventDefault()
$('form').on 'click', '.add_fields', (event) ->
count++
$('#price').text(count)
time = new Date().getTime()
regexp = new RegExp($(this).data('id'), 'g')
$(this).before($(this).data('fields').replace(regexp, time))
event.preventDefault()
在 View 中,出于测试目的,我已将计数变量设置为 1。我认为这需要在页面加载之前设置,因为它可能最后加载 JavaScript,因此不显示初始计数?
最佳答案
如果您想在某个元素中显示计数变量,请说 <div id="count"></div>
,你可以写$('#count').html(count)
在计数更新后立即点击函数。
更新: 对于初始计数(在用户单击添加/删除按钮之前),请将计数包含在 erb 页面模板中
<div id="count"><%= @initial_count %></div>
关于javascript - 计算表单中嵌套字段集的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11478545/