【发布时间】:2015-12-31 16:56:30
【问题描述】:
我正在使用此 gem (https://github.com/bluerail/twitter-bootstrap-rails-confirm) 将标准浏览器确认对话框替换为引导模式,它正在工作,但是,当“确认”或“取消”时没有内置回调按钮或选中,所以我正在尝试创建自己的。
我目前正在禁用单击原始链接以防止用户单击两次,但是,如果在确认对话框中单击“取消”,则需要重新启用该链接。这是我尝试过的:
$('#confirmation_dialog').find('.cancel').on 'click', (e) ->
console.log('cancel was clicked')
$('.disabled').removeClass('disabled')
问题是当单击“取消”按钮/链接时,它不会运行。
当使用 Chrome JS 控制台时,我可以在模态框上找到正确的“取消”按钮,并使用
调用它$('#confirmation_dialog').find('.cancel').click()
这有效地取消和关闭了模式,但是,我的on click 事件没有被触发,所以按钮没有重新启用。
这是页面上供用户点击的链接:
<td><%= link_to 'Cancel Appt', cancel_appointment_path(appointment), class: 'btn btn-default btn-xs btn-danger btn-disable-after-click', data: { confirm: "Are you sure you want to cancel the appointment?", commit: 'Yes', cancel: 'No' } %></td>
这会禁用按钮,因此用户无法点击两次:
$('.btn-disable-after-click').on 'click', (e) ->
$(this).addClass('disabled')
任何关于我做错的建议将不胜感激,谢谢!
【问题讨论】:
标签: javascript ruby-on-rails ruby twitter-bootstrap coffeescript