我正在寻找一种更复杂的方法来确认我现在使用的那个看起来像这样:

     <%= link_to_remove_association "<i class='icon-remove-sign'></i>".html_safe,
      p, :class => 'btn-link remove has-tooltip',
     :data => {:original_title => "Delete phone",
     :confirm => 'Are you sure you want to delete this phone?'} %>

如果电话输入为空,我只想避免确认对话框。
我想“茧:移走前”事件一定有办法,但我找不到?
例如,在这样的coffesecript函数中:
$(document).delegate '.phones', 'cocoon:before-remove', (e, item) ->

    tel = $(item).find('.tel .form-control')
    conf = true
    if tel.val().trim() != ''
      conf = confirm('Are you sure you want to delete this phone?')

    if conf
      $(@).data('remove-timeout', 1000)
      item.fadeOut('slow')
    else
      #stop deletion!!

    conf

有线索吗?

最佳答案

cocoon似乎缺少这个功能,但我只是分叉repo并添加了它。目前,您可以执行以下操作:
gemfile中的更改:

gem 'cocoon', git: 'https://github.com/BroiSatse/cocoon.git'

然后修改处理程序:
$(document).delegate '.phones', 'cocoon:before-remove', (e, item, result) ->

  tel = $(item).find('.tel .form-control')
  conf = true
  if tel.val().trim() != ''
    conf = confirm('Are you sure you want to delete this phone?')

  if conf
    $(@).data('remove-timeout', 1000)
    item.fadeOut('slow')
  else
    result.val = false

注意处理程序的额外参数。

关于ruby-on-rails - Ruby on Rails 4和cocoon gem:如何中断对cocoon的删除:删除前,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22328180/

10-12 12:29