Jquery 无法循环到最近的表单输入

Jquery 无法循环到最近的表单输入,jquery,html,Jquery,Html,请看一下这个演示,让我知道为什么我不能循环到所有输入中并获取它们的数据类型 $(“按钮”)。在(“单击”,函数(){ $(this).closest('form:input')。each(function(){ console.log($(this.data('type')); }); }); 获取输入类型 获取输入类型您可以找到与最接近的父元素。因为您的按钮不在表单的内部,但在它旁边。因此,您可以使用prev选择器,然后使用find获取input元素 您也可以通过@Shubham Bara

请看一下这个演示,让我知道为什么我不能循环到所有输入中并获取它们的数据类型

$(“按钮”)。在(“单击”,函数(){
$(this).closest('form:input')。each(function(){
console.log($(this.data('type'));
});
});

获取输入类型

获取输入类型
您可以找到与
最接近的父元素
。因为您的按钮不在
表单的内部,但在它旁边。因此,您可以使用
prev
选择器,然后使用
find
获取
input
元素

您也可以通过@Shubham Baranwal检查答案。在
表单中移动
按钮
也会起作用

$(“按钮”)。在(“单击”,函数(){
$(this).prev('form').find('input').each(function()){
console.log($(this.data('type'));
});
});

获取输入类型

获取输入类型
我认为您应该将
按钮
放在
表单
标记的内部,并使用下面的代码获取结果<代码>最近的
如果要查找父元素,只需工作即可。因此,修改代码如下所示-

$(“按钮”)。在(“单击”)上,函数(e){
e、 预防默认值();
$(this).最近的('form').find('input').each(function()){
console.log($(this.data('type'));
});
});

获取输入类型
获取输入类型