首页 > 解决方案 > 动态生成的 DOM 元素在表单提交后立即消失

问题描述

这是同一个老问题的后续问题

addEventListener在 Electron 应用程序中使用,我想知道是否有办法防止在每次提交表单后重新加载页面?

在我下面的代码中,ipc.send它会触发对所有 DOM 元素的重置。我检查 vanila JavaScript/HTML 是否按预期工作。正是ipc通信清除了动态生成的 DOM。这可以在 Electron 中规避吗?

renderer.js

const createCategoryButton = document.getElementById('create-category-button');
createCategoryButton.addEventListener("click", (event) => {
  event.preventDefault();
  let newCategatoryName = document.getElementById('category-name-input').value;
  ipc.send("createCategoryButtonClicked", newCategatoryName);
})

有关我的html文件的更多详细信息: index.html

<div id="new-menu-form-container">
        <form onsubmit="return false">
          <label id="category-label">Category Name</label>
          <input id="category-name-input" type="text" name="category-name">
          <button id="create-category-button">Create</button>
          <button id="delete-category-button">Delete</button>
          <br>
          <label id="item-label">Item Name</label>
          <input id="item-name-input" type="text" name="itemname">
          <button id="create-item-button">Create</button>
          <button id="delete-item-button">Delete</button>
        </form>
      </div>

标签: javascripthtmlelectron

解决方案


推荐阅读