如何单击Javascript中无法识别的自定义ID的按钮?如果没有名称、标签或ID,可以这样做吗?
有一个网站,我正在尝试使用JavaScript自动应用折扣代码。我需要知道另一种方法来让这个特定的按钮提交()或单击()它。我已经找到了一种输入代码的方法,因为该元素有一个ID。但是,此按钮的情况并非如此。当我使用data trekkie id“应用折扣按钮”时,它无法识别该id如何单击Javascript中无法识别的自定义ID的按钮?如果没有名称、标签或ID,可以这样做吗?,javascript,forms,button,click,submit,Javascript,Forms,Button,Click,Submit,有一个网站,我正在尝试使用JavaScript自动应用折扣代码。我需要知道另一种方法来让这个特定的按钮提交()或单击()它。我已经找到了一种输入代码的方法,因为该元素有一个ID。但是,此按钮的情况并非如此。当我使用data trekkie id“应用折扣按钮”时,它无法识别该id <button name="button" type="submit" class="field__input-btn btn btn--disabled" data-trekkie-id="apply_
<button name="button" type="submit" class="field__input-btn btn btn--disabled" data-trekkie-id="apply_discount_button" aria-busy="false">
<span class="btn__content visually-hidden-on-mobile" aria-hidden="true">
Apply
</span>
<span class="visually-hidden">
Apply Discount Code
</span>
<svg class="icon-svg icon-svg--size-16 btn__icon shown-on-mobile" aria-hidden="true" focusable="false"> <use xlink:href="#arrow" /> </svg>
<svg class="icon-svg icon-svg--size-18 btn__spinner icon-svg--spinner-button" aria-hidden="true" focusable="false"> <use xlink:href="#spinner-button" /> </svg>
申请
应用折扣代码
我对你要找的东西没有100%的了解。但是我想您应该选择带有自定义html5数据属性的按钮(
dataTrekkieID
)
您可以使用以下行在javascript中选择按钮:
const discountButton = document.querySelector('[data-trekkie-id="apply_discount_button"]');
它将返回与属性data trekkie id=“应用折扣按钮”
的第一个匹配项
然后,您可以通过附加addEventListener
方法来侦听此元素上的事件
如果您想侦听此元素上的click事件,则代码如下:
discountButton.addEventListener('click', function(){
alert('Discount button was clicked.'); // Replace this line with your code
});
由于HTMl的灵活性,您可以创建自己的属性,并根据需要使用它们;如果您曾经使用过bootstrap,您将看到它们为html标记添加了一些属性 你也可以这样做。 要使用data trekkie id属性捕获按钮上的clic事件,我们可以执行如下操作:
$("[data-trekkie-id=apply_discount_button]").click(function(){
//some stuff
})
或者简单地说:
$("[data-trekkie-id]").click(function(){
//some stuff
})
希望我的回答有帮助 如果可以,请将您的实际代码作为文本编辑到您的问题中-代码的图像单独用于处理和调试。这迫使那些本来想帮助你的人首先去做,这是浪费时间。非常感谢你的回答,不过我正在寻找另一个解决方案。我希望能够自动在文本框中输入一个数字(我已经这样做了),然后能够提交此代码。要做到这一点,我需要控制按钮(您帮助我),但我希望通过代码自动单击按钮,而不是听一听单击。