如何在激活时将焦点设置在 Bootstrap 模式内的输入字段或文本区域
答案:使用jQuery .focus()
方法
您可以简单地使用 jQuery .focus()
方法在启动时加载 Bootstrap 模式时将焦点设置在第一个输入框或文本区域上。
让我们试试下面的例子来了解它的基本工作原理:
示例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>将焦点设置在 Bootstrap 模态内的第一个文本输入上</title>
<link rel="stylesheet" href="css/bootstrap.min.css">
<script src="js/jquery-3.5.1.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script>
$(document).ready(function(){
$("#myModal").on('shown.bs.modal', function(){
$(this).find('#inputName').focus();
});
});
</script>
</head>
<body>
<!-- 按钮 HTML (触发模态) -->
<a href="#myModal" class="btn btn-lg btn-primary" data-toggle="modal">Launch Demo Modal</a>
<!-- 模态 HTML -->
<div id="myModal" class="modal fade">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Your Feedback</h5>
<button type="button" class="close" data-dismiss="modal">×</button>
</div>
<div class="modal-body">
<form>
<div class="form-group">
<label for="inputName">Name</label>
<input type="text" class="form-control" id="inputName">
</div>
<div class="form-group">
<label for="inputComment">Comments</label>
<textarea class="form-control" id="inputComment" rows="4"></textarea>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
<button type="button" class="btn btn-primary">Send</button>
</div>
</div>
</div>
</div>
</body>
</html>
上面示例中的 jQuery 代码只是找到
元素,并在模态对用户可见时使用模态的 <input>
shown.bs.modal
事件设置焦点。
FAQ 相关问题解答
以下是与此主题相关的更多常见问题解答: