Javascript 如何根据数据属性和输入名称(即数组)查找元素
我有以下html标记:Javascript 如何根据数据属性和输入名称(即数组)查找元素,javascript,jquery,Javascript,Jquery,我有以下html标记: //这是ajax成功的结果 成功:功能(响应){ if(response.success){ $(“[data input=”+response.field+“]”)。父项(“.file wrapper”)。查找(“[data item=”+response.item+“]”))。删除(); } } 身份证/护照 上传文件 链接到image.jpeg 相反,要使用父母,您可以使用 而父元素获取当前匹配元素集中每个元素的祖先,可选地通过选择器过滤 通过测试元素本身并在D
//这是ajax成功的结果
成功:功能(响应){
if(response.success){
$(“[data input=”+response.field+“]”)。父项(“.file wrapper”)。查找(“[data item=”+response.item+“]”))。删除();
}
}
身份证/护照
上传文件
链接到image.jpeg
相反,要使用父母,您可以使用
而父元素获取当前匹配元素集中每个元素的祖先,可选地通过选择器过滤
通过测试元素本身并在DOM树中向上遍历其祖先,获取与选择器匹配的第一个元素
如果ajax返回的值是字符串,则可以使用JSON.parse对其进行转换
我的例子是:
$(函数(){
var response='{“success”:true,“errors”:false,“field”:“director\u front\u passport”,“num”:“0”,“item”:“1”}';
$(“[data input=”+response.field+“]”)。最近的(“.file wrapper”)。查找(“[data item=”+response.item+“]”))。删除();
});代码>
身份证/护照
上传文件
链接到image.jpeg
此示例演示了如何在JQuery中使用多个选择器来获取具有更多属性的元素:
<h1 name="director_front_passport" data-item="1">Text to be deleted after 3 seconds.</h1>
<script type="text/javascript">
setTimeout(function (){
$("[name='director_front_passport'][data-item='1']").remove();
}, 3000);
</script>
3秒钟后要删除的文本。
setTimeout(函数(){
$(“[name='director\u front\u passport'][data item='1']”。删除();
}, 3000);
事实上,我需要使用数据输入=director\u front\u passport
查找输入,但也需要使用数据项=
。我发现此输入带有:$(“[data input='”+response.field+“]]”)。但如何将条件也添加到该字段中,使其具有数据项=1
?我会将这两个条件都放在选择器中。请参阅此链接:我将发布一个简短的答案,您的代码可以正常工作。问题似乎在别处。看看这个简化的提琴:您确定您的ajax返回的是JSON而不是字符串吗?您是否在ajax调用中添加了“json”参数?同时从director\u front\u Passports中删除[]对不起,我不正确。我需要找到数据输入为response.field的元素,该元素的数据项为response.item,然后我需要找到class=image\u name的元素并将其删除。在这种情况下,我需要删除“指向image.jpeg的链接”文本。@mistery_girl若要删除“指向image.jpeg的链接”,您可以使用:$(“[data input=”+response.field+“]”)。最接近的(“.file wrapper”)。查找(“.image_name”)。删除();对不起,我解释得不对。我混淆了这些数据属性。我有多个div具有相同的字段输入名称,因此我想使用1data item来区分它们。我找到了用这个名称和数据项查找输入的方法代码>$(“输入[name^='”+response.field+“'][data item='”+response.item+“']”)。父项('.file wrapper')。查找(“.image_name”)。删除()`@小姐,我明白了。再次抱歉,但是你确定父母是正确的方法而不是最接近的方法吗?