我正在尝试编写一些代码来完成非常简单的事情。我之前从未使用过PayPal按钮,这会造成一些困难。
我之前能够使用document.getElementById或document.getElementsByName()来模拟按钮点击,但是,我上面尝试提交的表单没有名称或ID,所以我不知道如何在我的代码中引用它。
我正在尝试使用Javascript编写一个简短的chrome扩展程序,它将在页面上找到paypal表单/按钮(我不拥有或无法控制),并在不必单击它的情况下提交它。任何指导/链接将不胜感激。
答案 0 :(得分:1)
您的按钮看起来有名称,因此您可以使用.getElementsByName()
var btn = document.getElementsByname('submit')[0]
如果您可以访问jQuery,或者可以将jQuery添加到项目中,那么
var btn = jQuery('input[name="submit"]')
答案 1 :(得分:0)
使用jQuery会更容易,但使用原生js,你可以这样做:
function getPaypalForms()
{
var matchingElements = [];
var allForms = document.getElementsByTagName('form');
for (var i = 0; i < allForms.length; i++)
{
if (allForms[i].getAttribute('action') == 'https://www.paypal.com/cgi-bin/webscr')
{
// Element exists with attribute. Add to array.
matchingElements.push(allElements[i]);
}
}
return matchingElements;
}
上面有很多方法可以编辑此功能以更好地满足您的需求。您可以对其进行编辑以仅从这些表单中收集提交按钮,或者重构它以接受与attr和值匹配的字符串。但是,就像我说的那样,使用jquery会更容易:
$('form[action="https://www.paypal.com/cgi-bin/webscr"]');
答案 2 :(得分:0)
根据您的更新,首先关闭:不要这样做,除非您试图欺骗人们没钱。在这种情况下,不要这样做=)(我不是律师,但我很确定paypal可以“你没有点击按钮,你自动化它。现在有人的网站让你花500美元那你不想。强硬“)。那就是:document.getElementsByTagName(“form”),然后过滤getAttribute(“action”)。