我正在尝试与具有特定类的第一个输入元素的父表单元素进行通信。 在任何给定页面上,我都可以有至少 2 个表单。我的标题中的登录表单,在本例中是我的页面正文中的表单。
我能够找到第一个具有如下类名的元素:
$('.my-select:first');
我想,获取父表单会很容易:
$('.my-select:first').closest('form');
但是,事实似乎并非如此。当我尝试这样做以确保我正在与正确的表单交谈时:
$('.my-select:first').closest('form').attr('id');
我回来了未定义。
'closest()' 沿着 DOM 向上移动,所以我想我会安全的。但我认为我没有找到正确的选择器。这是我的标记的样子:
HTML
<form id="myform">
<fieldset>
<div>
<div>
<label>
<select class="my-select">
....
我最终将拥有多个类名为“my-select”的选择元素。我将有一个按钮可以动态添加另一个选择输入。这就是为什么我需要找到最接近的表单元素。
感谢您的宝贵时间!
最佳答案
您的代码是正确的,但表单上没有要报告的 ID
<form id="?????"> <====
要测试您的代码,请使用长度:
alert($('.my-select:first').closest('form').length);
这应该显示1
。
JSFiddle 玩:http://jsfiddle.net/TrueBlueAussie/rz1ye80j/
关于javascript - 从第一个输入中获取具有特定类的父表单元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26890285/