单击页面上的所有按钮

问题描述 投票:2回答:5

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

他们各自分享:

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

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

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

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

javascript html button submit
5个回答
5
投票

要单击页面上具有相同名称的所有按钮,可以使用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();

0
投票

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

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

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


0
投票

[使用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>

0
投票

// 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>

-3
投票

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

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

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

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

© www.soinside.com 2019 - 2024. All rights reserved.