试图找出如何点击此按钮
<input class="button" type="submit" name="checkout" value="Check out">
使用此功能
document.getElementBy????('????').click()
还是应该使用其他功能?
答案 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()
返回一个元素数组。管理文本输入和复选框输入之间的差异然而是另一个问题的主题。