如何使用javascript找到并点击网页上的特定按钮?

时间:2013-07-24 15:53:31

标签: javascript button

基本上,我正在尝试编写一个命令行客户端脚本(javascript)来自动在线购买东西。

问题是,在这个特定的网页上,我试图点击的按钮(添加到购物车)在页面中出现多次(针对不同的产品)。

我知道:

document.getElementById('addToCart').submit();

会点击addToCart,但由于有几个具有相同名称的按钮,如何找到并点击特定产品的特定按钮?

我们可以假设我们事先知道产品名称,并且每个addToCart按钮都有一个唯一的ID(我不知道)。

3 个答案:

答案 0 :(得分:0)

你有点自己回答,如果你已经知道产品名称,你肯定知道它的按钮ID了吗?

document.getElementById('button234').click()

答案 1 :(得分:0)

页面上的特定ID不应超过一个元素。 如果您需要多个元素,请使用class属性。

正如SmokeyPHP所写,您可以使用.click().submit()来触发点击事件。

答案 2 :(得分:0)

每个人都是正确的,你应该只有一个ID,但这里有一点比较你如何做到这一点。

所以你说你有一些动态生成的HTML吗?您将获得一个产品列表,您可以获得如下所示的按钮列表。

<input id="productId_233442" class="addToCart" type="button" value="addToCart"></input><br/>
<input id="productId_25AD22" class="addToCart" type="button" value="addToCart"></input><br/>
<input id="productId_1J3422" class="addToCart" type="button" value="addToCart"></input><br/>

出于样式目的,您可以为它们提供与上例中相同的addToCart类。

至于java脚本,你可以有这样的东西。

$(document).ready(function(){
  $(document).click(function(event){
        alert(event.target.id);
    });
});

我正在使用JQuery,我建议但是如果你愿意,你可以在纯JS中做到这一点,但我无法想象为什么你会这样做。

见下面的小提琴。 http://jsfiddle.net/r0k3t/dRam5/