我正在使用 Twitter 的 Bootstrap 在 Marionette 应用程序中生成模式对话框。

我想知道在不使用花哨的 javascript 的情况下将第一个字段集中在模态表单中的最佳方法是什么。

这是我的代码:

var app = new Marionette.Application();

app.addRegions({
    modal: '#modal'
});

app.vent.on('showModal', function (view) {
    var modal = app.modal;

    modal.show(view);
    modal.$el.modal({
        show: true,
        keyboard: true,
        backdrop: 'static'
    });
});
有帮助吗?

解决方案

您可以使用 doc

modal.$el.on('shown', function () {
  $('input:text:visible:first', this).focus();
});
.

其他提示

如果 odupont的回答对你没有帮助,(像我一样)尝试这个:

$('.modal').on('shown.bs.modal', function () {
    $('#firstField').focus();
})

这是一个更新的答案:

$('.modal').on('shown.bs.modal', function () {
    $('input:first', this).focus();
});
.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top