Javascript 从表单中的第一个文本区域获取id
我有一个表单,其样式如下:Javascript 从表单中的第一个文本区域获取id,javascript,jquery,Javascript,Jquery,我有一个表单,其样式如下: <form> <input> <textarea> <!-- I want this id --> <div> <textarea> <input> </div> </form> 在多次尝试之间,我的最后一次尝试是$(form).next('textarea').attr('id')这并不是因为我有$(表单),它
<form>
<input>
<textarea> <!-- I want this id -->
<div>
<textarea>
<input>
</div>
</form>
在多次尝试之间,我的最后一次尝试是$(form).next('textarea').attr('id')代码>这并不是因为我有$(表单),它工作正常。问题在于.next('textarea').attr('id')代码>未定义日志记录。这方面有什么帮助吗?您需要的是
$(form).find('textarea').first().attr('id');
正如注释中所述,.first()
不是必需的,因为当您调用.attr()
时,它从所选的第一个元素中获取属性。请尝试$('form textarea')。attr('id')
请参见使用。改为查找
。jQuery文档提供了有关DOM遍历方法的足够信息:。关于next
的文档说:“获取匹配元素集中每个元素紧跟其后的同级。如果提供了选择器,则仅当它与该选择器匹配时,它才会检索下一个同级。”。仅此一点就应该告诉您。next
不是正确的使用方法。textarea不是表单元素的同级。本机JavaScript-document.querySelector(“表单textarea”).id
.first
甚至不是必需的(但明确无误)。