【发布时间】:2020-03-31 18:34:56
【问题描述】:
这是fiddle
在循环函数中,我将获得在顶层具有span 元素的html 字符串,也可以作为div 中的子元素。在这两种情况下我怎样才能找到它?
我知道find 只搜索儿童。甚至不知道当它位于顶层时如何找到它,如下面的data2?如果我这样做了,那么我想我会先做一个find,如果它的长度为0,然后在顶层搜索span。
var data1 = "<div class='form-group'><span class='editableColumn'>NAT</span><input type='text' class='editableColumn form-control' style='display:none' name='Lot' value='NAT'></div>";
var data2 = "<span class='editableColumn'>Yes</span><input type='checkbox' name='IsBackorder' class='editableColumn editor-active' style='display:none' checked='checked' value='true'>";
var myStringArray = [data1, data2];
var arrayLength = myStringArray.length;
$(document).ready(function() {
for (var i = 0; i < arrayLength; i++) {
console.log(myStringArray[i]);
//Do something
var span = $(data1).find("span.editableColumn").text();
$("#" + i).text(span);
}
})
【问题讨论】:
-
你试过
.closest()吗? -
@johnny_the_programmer 似乎
addBack()进行了双重查找,因此它正在复制结果。在此处使用addBack()查看更新的小提琴:jsfiddle.net/g4p19n2e 您会看到“NAT”被复制为“NATNAT”。 -
@Souleste `.closest()' 不起作用。在此处查看小提琴测试:jsfiddle.net/g4p19n2e/2
-
@ChadRichardson jsfiddle.net/a21sk6dx 这似乎对我有用!
标签: javascript jquery html