jquery 如何使用JavaScript在表单中 Package 输入文件?

g6ll5ycj  于 12个月前  发布在  jQuery
关注(0)|答案(2)|浏览(111)

我有一个功能:

function resetInputFile(elem) {
    elem.wrap('<form>').closest('form').get(0).reset();
    elem.unwrap();
}

字符串
我这样调用函数:

resetInputFile(document.queryElement('#image'));


如何转换LOC

elem.wrap('<form>').closest('form').get(0).reset();
elem.unwrap();


转换成纯JavaScript?
我想在ReactJS中实现逻辑,但我不想在ReactJS中使用jquery。所以我需要使用纯JavaScript。

6ljaweal

6ljaweal1#

你可以尝试这样的东西:

function resetInputFile(elem) {
  const form = document.createElement('form');
  const parent = elem.parentNode;

  parent.insertBefore(form, elem);
  form.appendChild(elem);
  form.reset();
  parent.insertBefore(elem, form);
  parent.removeChild(form);
}

function resetFileInput() {
  resetInputFile(document.querySelector('#image'));
}

个字符

z8dt9xmd

z8dt9xmd2#

function resetInputFile() {
  const elem = document.getElementById('image'); //--Get the input element

  const form = document.createElement('form'); //--> Create a <form> element
  const parent = elem.parentNode;//-- Get the parent node of elem

  //-->Replace elem with the newly created form, moving elem inside the form
  parent.replaceChild(form, elem);
  form.appendChild(elem);

  //--Reset the form
  if (form && form.parentNode) {
    form.reset();
    // Restore elem to its original position outside the form
    form.parentNode.replaceChild(elem, form);
  }

  // Unwrap the element
  if (elem.parentNode) {
    const grandParent = elem.parentNode.parentNode; //--> Get the grandparent node
    grandParent.replaceChild(elem, elem.parentNode); //--->Replace form with elem
  }
}

个字符

相关问题