亲爱的朋友,我有网站,我想为autoclick创建javascript bookmarklet,但该网站不使用ID标签。这是网站的代码: -
<input type="submit" name="Submit" value="Find Product"
onclick="return incrementClicksTest('2','true')" class="buttonSubmit">
我使用了这个JavaScript书签
javascript:document.getElementById('any_id_here').click()
适用于id,我如何使用名称,值和类型标记制作bookmarklet
感谢dvance !!
答案 0 :(得分:2)
使用以下内容:
document.getElementsByTagName("input")[0].click();
示例代码:http://jsfiddle.net/dcRsc/
现在,如果您的按钮是页面中的第一个输入,那将会有效。
如果页面中有许多元素,请使用此选项:
var elems =document.getElementsByTagName("input");
for(var i=0;i<elems.length;i++)
{
if(elems[i].type=="submit" && elems[i].name =="Submit")
{
elems[i].click();
break;
}
}
示例代码:http://jsfiddle.net/dcRsc/1/
这将触发提交按钮的click
事件,并提交名称。
此外(由于您的按钮已经有一个css类),您可以使用getElementsByClassName()
方法:
var elems =document.getElementsByClassName("buttonSubmit");
for(var i=0;i<elems.length;i++)
{
if(elems[i].name =="Submit")
{
elems[i].click();
break;
}
}
示例代码:http://jsfiddle.net/dcRsc/2/
这将获得应用了buttonSubmit
类的所有元素。
或
document.getElementsByClassName("buttonSubmit")[0].click();
如果您的按钮是页面中唯一包含该类的元素,则完全避免for
循环。