**没关系。我想到了。 **
我是这样做的:
$("#accordion").accordion({
header:'h3',
active: '#section1',
autoheight: false,
clearstyle: true,
}).bind("change.ui-accordion", function(event,ui) {
$("#text1").focus();
});
我手风琴都设置好了,每个div都有一个表格。我只想弄清楚如何将焦点设置在输入字段上,具体取决于哪一个打开...
/* accordion */
$("#accordion").accordion({
header:'h3',
active: '#section1',
autoheight: false,
clearstyle: true
});
基本上,我想将光标设置在第一个输入字段中,无论哪个部分打开。实际的形式要大得多,所以我非常强调......
<div id="accordion">
<h3 id="section1"><a href="#">Section 1/a></h3>
<div>
<form id="form1" action="form.php" method="post">
<fieldset class="inside">
<input type="text" name="text1" id="text1" size="50" value="Default text" />
<input class="open" type="button" value="Submit" name="submit1" />
</fieldset>
</form>
</div><!--/div-->
<h3 id="section2"><a href="#">Section 2</a></h3>
<div>
<form id="form2" action="form.php" method="post">
<fieldset class="inside">
<input type="text" name="text2" id="text2" size="50" value="Submit" />
<input class="open" type="button" value="Submit" name="submit2" />
</fieldset>
</form>
</div><!--/div-->
<h3 id="section3"><a href="#">Section 3</a></h3>
<div>
<form id="form3" action="form.php" method="post">
<fieldset class="inside">
<input type="text" name="text3" id="text3" size="50" value="Submit" />
<input class="open" type="button" value="Submit" name="submit3" />
</fieldset>
</form>
</div><!--/div-->
答案 0 :(得分:0)
最好使用内置于此类事件中的手风琴
$(".accordion").accordion({
beforeActivate: function() {},
activate: function( event, ui ) {
$(ui.newPanel).find('input')[0].focus()
}
});
姜是最好的
答案 1 :(得分:0)
如果只需要集中一个输入,则上面提到的两种方法(.bind("change.ui-accordion"...
和activate: function( event, ui ) {...
)就可以工作。我有3个文本输入,用户需要单击它们。为了解决这个问题,我用了:
$(":input").click(function() {
$(this).focus();
});
当然,“:input”可以更改为所需的任何内容。