单击页面上的所有按钮

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单击页面上的所有按钮相关的知识,希望对你有一定的参考价值。

我想知道是否有人可以使用简单的javascript代码来单击页面上具有相同值名称/输入名称的所有按钮?

他们各自分享:

<input name="all" type="submit" value="Do All">

这是按钮的屏幕截图:http://oi61.tinypic.com/2nqblnr.jpg

也许有人应该制作一个可以用作“全部单击”按钮的按钮?这将是一个chrome扩展名(供个人使用),因此我真的无法更改“全部完成”按钮的代码。

我在Google上很难找到它,我对html / CSS很好,但对JavaScript确实很糟糕。

答案

要单击页面上具有相同名称的所有按钮,可以使用getElementsByName()函数并将其设置为一个变量,该变量将保留NodeList中的所有按钮,然后循环遍历NodeList并为每个事件调用click()事件按钮。

例如:

   // Get all buttons with the name 'all' and store in a NodeList called 'buttons'
   var buttons = document.getElementsByName('all');

    // Loop through NodeList and call the click() function on each button
    for(var i = 0; i <= buttons.length; i++)  
       buttons[i].click();
另一答案

我想这就是您想要实现的目标:

jsfiddle:http://jsfiddle.net/vqk2V/

使用jquery的.click() [http://api.jquery.com/click/]方法实现。

另一答案

[使用Java ...也许正在使用Selenium。但是您可以使用jquery(javascrpt的框架),因此代码可以是:

<scrpipt>
function ClickAllButtons()
{
    if($("input[type=button][name='someName']").length > 0)
    {
        $('input[type=button]').each(function(i){
        var $currentButton = $(this);
        $currentButton.click();
        });
    }
}
</script>
另一答案

// Select all buttons with class .btn
const btns = document.querySelectorAll('.btn');

// Attach click handler 
for(let i = 0; i < btns.length; i++) {
	btns[i].addEventListener('click', function() {
  	alert(this.innerHTML);
  })
}

// Perform all buttons click
for(let i = 0; i < btns.length; i++) {
	btns[i].click();
}
<button class="btn">
1
</button>
<button class="btn">
2
</button>
另一答案

您想做的是创建一个类,例如。

公共类MyClass {........}

..然后创建执行单击按钮时完成的处理的方法。如果您的方法在需要该方法的特定按钮中不是静态的,则使用一个对象调用这些方法。

现在您可以创建一个按钮,该按钮调用您要调用的所有方法,它将按您的要求进行操作。

以上是关于单击页面上的所有按钮的主要内容,如果未能解决你的问题,请参考以下文章

如何从Android中的片段单击按钮打开片段

Instagram 克隆。单击按钮时,为啥我不能回到上一个片段?

单击按钮时将文本插入另一个页面上的元素[关闭]

在 Activity 内部,如何暂停 for 循环以调用片段,然后在按钮单击片段后恢复循环以重新开始

热门从另一个片段导航到主页片段

导航抽屉活动:在按钮单击时从片段移动到片段