哪个getElement函数点击按钮?

时间:2014-07-10 12:06:19

标签: javascript

试图找出如何点击此按钮

<input class="button" type="submit" name="checkout" value="Check out">

使用此功能

document.getElementBy????('????').click()

还是应该使用其他功能?

5 个答案:

答案 0 :(得分:1)

您可以使用document.getElementsByName('checkout')[0].click()

您也可以使用document.getElementsByClassName('button')[0].click()

答案 1 :(得分:0)

您可以在输入中添加一个id并使用document.getElementById,也可以使用document.getElementsByClassName来返回一个数组。

document.getElementsByClassName('classname')[0].click()

答案 2 :(得分:0)

将此用于javascript

document.getElementById("nameofid");

在dom中的元素上添加一个id并添加onclick =“(javascript here)”属性

<input class="button" type="submit" id="nameofid" name="checkout" value="Check out">

使用onclick属性

在按钮调用的javascript中添加一个函数
function myfunction(){
var myvar = document.getElementById("nameofid");
//you may adjust its properties by calling myvar.nameofproperty
//or even call a method myvar.nameofmethod
}

答案 3 :(得分:0)

首先,要非常确定,您应该只给您的按钮一个唯一的ID:

<input id="myCheckoutButton" class="button" name="checkout" value="Check out" />

document.getElementById("myCheckoutButton").click();

基本上是针对您的问题,并假设您无法出于某种险恶的原因修改HTML ...

document.getElementsByName

如果您100%确定文档中只有一个具有此名称的元素,那么这将是您的选择。如果不是,它有点棘手,但也起作用:

for(var i = 0; i < document.getElementsByName("checkout").length; i++) {
    if(document.getElementsByName("checkout")[i].value == "Check out") {
        document.getElementsByName("checkout")[i].trigger("click");
    }
}

但如果您能够在页面中实现和使用jQuery,那么这是非常好的选择:

按名称:

$(".checkout[name=checkout]").trigger("click");

如果您有多个元素,则按类和比较值:

$(".checkout").each(function() {
    if($(this).val() == "Check out")) {
        $(this).trigger("click");
        return false;
    }
} 

答案 4 :(得分:0)

有几个。选择取决于您想要和/或需要的具体程度。

最具体的是getElementById(),它要求您在元素上拥有ID。你只能在页面上有一个并且非常具体。

如果您在页面上有组件以上并且想要为每个组件添加一个事件,那么您想要的是getElementsByClass(),它将返回所有元素的数组那个班级。

最后,如果要引用表单元素,可以使用name属性来管理复选框和单元格元素。它有助于降低使用唯一ID的特异性,而无需为每个表单元素添加额外的类:getElementsByName()(如getElementsByClass()返回一个元素数组。管理文本输入和复选框输入之间的差异然而是另一个问题的主题。