要让 Vue 或 React 等框架感知变化,必须触发原生事件,比如 inputchange

定义一个赋值方法

function setInutValue(element, value) {
  const lastValue = element.value;
  element.value = value;
  const event = new Event('input', { bubbles: true });
  const tracker = element._valueTracker;
  if (tracker) tracker.setValue(lastValue);
  element.dispatchEvent(event);
}

然后这样调用:

var inputs = document.querySelectorAll('input'); // 获取表单内所有input元素
setInutValue(inputs[1], 'admin');

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐