【发布时间】:2016-05-03 13:26:27
【问题描述】:
按钮控制模式对话框的可见性。这发生在表单引擎的上下文中,因此受控模式对话框由敲除绑定确定。
<button type="button" class="btn btn-primary" data-toggle="modal"
data-bind="attr: {
id: 'attachment' + Metadata.FormFieldID,
'data-target': '#attachment-dialog' + Metadata.FormFieldID
}">
对话框本身绑定到文件系统的视图模型。如果已经提供了一个值,它应该显示包含类别并预先选择指定的文档。
这可以正常工作,但视图模型是在视图呈现之前准备好的,因此将选择滚动到视图中静默失败。
我可以停止使用数据切换并显式控制对话框的可见性,但我想知道是否有任何方法可以检测到对话框已切换为可见,以便我可以触发代码将选择滚动到视图中。
那么问题来了:如何使用 data-* 属性检测到 data-toggle 已使对话框可见?
我知道
$('#myModal').on('shown.bs.modal', function (e) {
// do something...
})
但这是一个表单引擎,UI 相当动态,因此管理事件订阅会很麻烦。
【问题讨论】:
标签: knockout.js twitter-bootstrap-3