gpt4 book ai didi

javascript - 专注于第一个表单元素,无论它是什么。 jQuery 对话框

转载 作者:行者123 更新时间:2023-11-28 11:09:33 24 4
gpt4 key购买 nike

我有一个 jQuery 模式对话框,当它打开时我希望它关注第一个表单元素。

目前我有这个:

the_dialog.dialog({ 
modal: true,
width: 700,
title: 'title',
close: suicide ,
open: function(event, ui) {
setTimeout(function() {
jQuery('#').focus(); <-- VERY SPECIFIC CSS SELECTOR PERHAPS?
}, 220);
}
}
);

我的问题是,这个对话框是从我的应用程序中的几个不同位置调用的,并且第一个表单元素有时可以是输入,有时可以是选择

表单的布局始终相同,只有第一个表单元素可能会发生变化。

<table>
<tbody>
<tr>
<td>LABEL</td>
<td>FIRST FORM ELEMENT</td>
</tr>
<tr>
<td>LABEL</td>
<td></td>
</tr>
<tr>
<td>LABEL</td>
<td></td>
</tr>
<tr>
<td>LABEL</td>
<td></td>
</tr>
</tbody>
</table>

在不添加任何类或 ID 的情况下,当表单打开时,我可以专注于第一个表单元素(无论它是什么)吗?

最佳答案

可以使用伪:input打开回调中的选择器并查找第一个非隐藏元素

open: function(event, ui) { 
the_dialog.find(':input:not(:hidden):first').focus()
}

:input过滤标签<input> , <textarea><select>

:hidden过滤 display:none 中不可见的任何标签以及 type="hidden"

关于javascript - 专注于第一个表单元素,无论它是什么。 jQuery 对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27802453/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com