在 Elementor 弹出窗口中填写输入字段

时间:2021-05-13 11:39:50

标签: javascript elementor

我正在尝试创建一个函数,该函数会根据点击的 brn id 自动填充弹出窗口中的输入。

这就是我所在的位置:

const btn = document.querySelector('.popup-activator')
let btnId

btn.addEventListener('click', function(){
   btnId = this.id;
});
document.getElementById("form-field-id").value = btnId; 

我可以看到我的 id 保存在 btnId 中,但它没有显示在表单字段中。这可能是因为当我单击按钮时,页面上尚未生成弹出窗口,单击该按钮后它会打开。 这是我尝试执行此操作的链接 https://www.avistech.cz/pujcovna-nakladace/ 它应用于第一个按钮“Poptat”

如果有人能帮忙,我真的很感激

1 个答案:

答案 0 :(得分:0)

当模态完全加载时,您需要将值分配给输入。

const btns = document.querySelectorAll('.popup-activator')

btns.forEach(b => {
  b.addEventListener('click', function(){
    const btnId = this.id;
    // setting the value inside the fn so that it triggers after the button clicks
    // setTimeout delays the assignment a little so that the modal gets mounted
    setTimeout(() => {
      document.getElementById("form-field-id").value = btnId;
    })
  });
})