我在我的WordPress网站上使用Amelia日历插件。
我在使用document.setAttribute(value, name)
的地方启用了自定义字段,但是当我提交此表单时,JS setAttribute
字段不会发送到后端。
下面是我设置的测试域来看看:http://s918546899.websitehome.co.uk/elementor-6
下面是我编写的JavaScript,用于设置自定义字段中的值:
if(window.location.href.includes("elementor-6")) {
// 1. set on click on next button once you land on page
setTimeout(function(){
document.getElementsByClassName("am-button")[1].setAttribute("onclick", "myFunction()");
console.log("onclick has been set")
}, 3000);
}
// 2. call function that will set on click on next button for second form screen
function myFunction() {
if (document.getElementsByClassName("am-fs__main-heading-inner-title")[0].textContent != "Your Information") {
setTimeout(function() { document.getElementsByClassName("am-button")[1].setAttribute("onclick", "myFunction()"); }, 3000);
console.log("onclick set again");
} else {
//document.getElementsByClassName("am-fs__main-heading-inner-title")[0].textContent == "Your Information" {
// set text in input fields
document.getElementsByClassName("el-input__inner")[3].setAttribute("value", "test");
document.getElementsByClassName("el-input__inner")[4].setAttribute("value", "test2");
}
}
如果有人能看一下并帮助解决这个问题,我将非常感激。
这也是一个测试域,如果有人想看看BE,很乐意分享wp-admin凭据。
1条答案
按热度按时间gudnpqoy1#
您正在附加事件,而不是设置属性。这是使用函数
addEventListener
完成的。还可以考虑使用更有条理的querySelectorAll
或querySelector
来代替getElementsByClassName
。下面是一个例子:
另一方面,有时候你可能会想做一个内联
onclick
,特别是当你从服务器回显html的时候。在这种情况下,它会工作,但仍然不建议。