11
ブートストラップモーダルの特定のフィールドが表示された後、そのフィールドにフォーカスを設定する方法
ブートストラップモーダルに関していくつか質問がありますが、これとまったく同じではないので先に進みます。 私はそのようにonclickを呼び出すモーダルを持っています... $(".modal-link").click(function(event){ $("#modal-content").modal('show'); }); これは正常に動作しますが、モーダルを表示するときに最初の入力要素に焦点を当てたい...場合によっては、最初の入力要素のIDが#photo_nameです。 だから私は試した $(".modal-link").click(function(event){ $("#modal-content").modal('show'); $("input#photo_name").focus(); }); しかし、これは役に立たなかった。最後に、「show」イベントにバインドしてみましたが、それでも入力がフォーカスされません。最後にテストのためだけに、私は疑いがあるのでこれはjsの読み込み順序に関するものです。1秒遅延するかどうかを確認するためにsetTimeoutを入力し、フォーカスが機能するかどうかを確認します。しかし、この方法は明らかにくだらないです。setTimeoutを使用せずに以下と同じ効果を発揮する方法はありますか? $("#modal-content").on('show', function(event){ window.setTimeout(function(){ $(event.currentTarget).find('input#photo_name').first().focus() }, 0500); });