Javascript JS:根据其onClick值选择DIV
我有几个不同的Javascript JS:根据其onClick值选择DIV,javascript,html,Javascript,Html,我有几个不同的divs,它们具有相同的class,没有id,并且只有它们的onClick函数将它们分开,这样它们才是唯一可识别的,如下所示: <div class="nest" onclick="nested.selection('VALUE1'); return false;"> ... something inside the div ... </div> <div class="nest" onclick="nested.selection('VALUE2
div
s,它们具有相同的class
,没有id
,并且只有它们的onClick
函数将它们分开,这样它们才是唯一可识别的,如下所示:
<div class="nest" onclick="nested.selection('VALUE1'); return false;">
... something inside the div ...
</div>
<div class="nest" onclick="nested.selection('VALUE2'); return false;">
... something inside the div ...
</div>
... 舱里有东西。。。
... 舱里有东西。。。
我需要根据指定的onClick
值查找并删除整个div
,但是由于我不能使用getElementById、类或名称,如何使用JS(而不是jQuery)实现这种查找呢?elements=document.querySelectorAll('.nest');
对于(var i=0;i{
const item=event.target;
item.parentNode.removeChild(item);
});
}
此代码将在单击div后删除它。
Im将事件处理程序附加到所有“嵌套”元素,然后在单击特定项后将其删除。尝试此操作
var nested = {
selection: function (a, e) {
var element = e.currentTarget;
element.parentNode.removeChild(element);
}
}
html
... div里面有东西…VALUE1
... div里面有东西…VALUE2
试试这个
document.querySelector('[onclick="nested.selection(\'VALUE2\'); return false;"]').remove()
您不需要单击此处的任何内容。把论点传过去。像这样:
deleteWithArg('VALUE1');
函数deleteWithArg(deleteElement){
var nst=document.getElementsByClassName(“嵌套”);
对于(变量i=0;i
... div中的值为1的内容。。。
... div中的值为2的内容。。。
您可以在JS函数中使用/传递“this”,该函数将指向div元素并调用click函数。您可以修改onClick响应程序吗?按html标记@raphaelSeguin选择-不,我不是。不使用内联onClick函数总是更优雅,最好使用addEventlisteners,不要将html代码与js代码混合在一起。要删除的元素不需要用户执行onClick操作,当页面加载时,该元素应该被删除(如不显示)。我根本无法编辑html部分,js需要按原样查找。Ok不需要传递事件;var nested={selection:function(a){var element=event.currentTarget;element.parentNode.removeChild(element);}当你点击时,他不想删除该元素。你能解释为什么这个答案比其他答案好吗?我认为它在一行中干净利落地完成了这项工作,而无需在搜索所需元素时遍历所有元素。
document.querySelector('[onclick="nested.selection(\'VALUE2\'); return false;"]').remove()
deleteWithArg('VALUE1');