jQuery帮助获取包含特定类的数组中的元素
jquery help to get element in array that contains certain class
jqTds =[
<td class="hidden-xs sorting_1">text1</td>
<td class=" ">text2</td>
<td class=" ">text3</td>
<td class=" ">text4</td>
<td class=" "><a href="#" class="edit-row">Edit</a></td>
<td class=" "><a href="#" class="delete-row">Delete</a></td>]
如何获取所有具有"锚点"的元素,并带有类"编辑行"或"删除行",并获取所有其他没有它的元素
我正在编辑一个使用 DataTables.js 的脚本,我正在尝试做的是将表行中的所有元素放入(var jqTds = $('>td:not(.hide_me)', nRow)),现在我想在所有元素中包含一个输入,除了那些具有保存行类和编辑行类的元素,因为它们链接到保存/删除
提前致谢
不知道为什么将它们放在"数组"中,但是如果您在它们仍在DOM中时运行此操作,请使用:has
伪选择器:
var $tds = $('td:has(a:.edit-row,a:delete-row)');
var $otherTds = $('td').not($tds);
第一个是。 *查找任何 TD 中有一个类 edit-row
的锚点或其中有一个类 delete-row
"的锚点。
第二个只是说,找到所有td
并从匹配中排除第一批:)
您可以使用
$.grep()
来过滤数组。
使用传递给$.grep()
的函数,您可以尝试在当前<td>
中找到您的元素。如果找不到a.edit-row
或a.delete-row
,则返回 true,否则返回 false:
var filteredTds = $.grep(jqTds, function(td){
var $td = $(td);
return !$td.find('a.edit-row').length && !$td.find('a.delete-row').length;
});
JSFiddle
我能够这样做:
for (var i = 0; i < editColumn.length; i++) {
if ($(editColumn[i]).find("a").hasClass("edit-row") == true) {
editColumn[i].innerHTML = '<a class="save-row" href="">Salvar</a>';
}
else if ($(editColumn[i]).find("a").hasClass("delete-row") == true) {
editColumn[i].innerHTML = '<a class="cancel-row" href="">cancelar</a>';
}
相关文章:
- 在函数中添加数组元素的数值
- 访问JSON对象内部的数组元素
- Mongoose-在更新中删除数组元素
- javascript数组元素是否知道其封闭数组
- 将数组元素附加到FormData dos'不适用于Firefox 15
- 如何在javascript中使用click函数选择数组元素
- 如何在JavaScript中剥离数组元素中的非整数
- 消隐数组元素是否生成自己的属性
- 如何使一个Math.random数组元素比另一个数组元素更有可能被选中
- 在Codrops的内容中添加数组元素展开缩略图网格预览
- 如何使用Jquery水平打印表中的数组元素,并在某个元素之后垂直打印
- 如何访问数组中的数组元素(JavaScript)
- 生成ACF标记位置的数组(元素列表后缺少])
- validate.js验证数组元素
- JavaScript Unshift EACH 数组元素
- 如何在加号运算符之后选择数组元素的一部分
- 访问标记图标的图像数组元素
- JavaScript 合并相同的数组元素
- 删除仅空格数组元素
- JavaScript闭包和返回数组元素