我正在尝试将焦点设置在jQuery树的一部分表单中的文本框中。这是我的代码
$(document).ready(function() {
$("#search").focus();
});
HTML:
<div>
<form action="search" method="post" name="frmSearch>
<label for="search">Search:</label>
<input type="text" name="search" id="search" />
<input type="submit" name="button" value="Search" />
</form>
</div>
当我单击树中的“搜索”选项卡时,它不会将焦点设置在文本框上。有人能让我知道代码中有什么问题吗?
答案 0 :(得分:6)
您正在将文本框聚焦在页面加载上,但是只要您单击页面上的任何其他位置(例如选项卡),焦点就会从文本框中删除并提供给您刚刚单击的内容。
不是专注于页面加载,而是将一个点击监听器附加到选项卡,以便在单击时search
文本框获得焦点。由于我没有看到您的所有标记,因此我使用#mySearchTab
作为搜索标签ID的占位符:
$(document).ready(function() {
$("#mySearchTab").on('click', function() {
$('#search').focus();
});
});
此外,请不要忘记使用)
关闭您的功能。
我不确定你的树是什么样的,但这里是使用jQuery标签的working demo。
答案 1 :(得分:1)
我在你的js代码中做了一些修改
<强> http://jsfiddle.net/8CTqN/5 强>
$(document).ready(function(){
$(function(){
$("#search2").focus();
});
});
答案 2 :(得分:1)
尝试以下:
$(function(){
$("input:first:text").focus();
});
在这里工作小提琴:http://jsfiddle.net/8CTqN/2/
在chrome上测试