gpt4 book ai didi

javascript - 查找输入元素,但仅查找具有 onclick 事件的输入元素

转载 作者:行者123 更新时间:2023-12-01 02:25:36 24 4
gpt4 key购买 nike

我的一些输入元素具有 onclick="setSomeFunction()",它显示或隐藏以下几个 div。

我可以通过以下方式找到输入元素document.getElementsByTagName(“输入”)并将它们放入一个数组中。但我只想将“onclick”输入放入另一个数组中。

我发现您可以测试 .class,(例如)

if (document.getElementById("someId").class == "block" ) 

但是好像没有对应的“.onclick”?或者我的代码是否因为某些输入元素根本没有 onclick 事件而失败?

function consoleInputs() {
var inputs = document.getElementsByTagName("input"); //finds all the input elements
console.log(inputs); //list all the inputs
var hasClick; // store all the inputs WITH onclick event here
var loop = inputs.length; // max rounds in the loop
var i;
for (i = 0;i <= loop ;i += 1){
if ((document.getElementById("inputs[i]").onclick) == ("set"+"*")) {
hasClick = hasClick + inputs[i]
}
}
console.log(hasClick);
}

我尝试了不同的 if 语句,但没有运气,真的......我不断收到错误

Uncaught TypeError: Cannot read property 'onclick' of null

我对 jQuery 的了解还不够,所以请避免。

最佳答案

JavaScript 的选择器功能与 jQuery 的选择器功能非常相似。

因此您可以通过

获取所有具有 onClick 属性的输入
document.querySelectorAll('input[onClick]')

这将返回定义了 onClick 属性的输入元素数组。

编辑

CSS也有startsWith选择器,所以你可以用这个来获取以set开头的onclick属性

document.querySelectorAll('input[onClick^="set"]')

关于javascript - 查找输入元素,但仅查找具有 onclick 事件的输入元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48836569/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com