js代码修改react框架的input的值-2025年6月

需求,在1688商家工作台中的发布助手页面中,设置了模版依旧会有些输入框内容要自己填写,太麻烦了。

比如下面中的可售数量

想着自己写了个脚本方便自己填充数据。

试着尝试直接修改input标签的value值,点下其他空白处输入框内容就没有了。

通过插件看了下用到了react。

在控制台看了下react的版本,我这里版本是16.14.0版本,其他版本的没测试

封装好函数了,传入input元素对象和新的内容即可

js 复制代码
/**
 * 修改react的input框的值,vue的没有测试
 * @param inputEl 输入框元素
 * @param newText 新的文本
 */
function setReactInputValue(inputEl, newText) {
    //1. 聚焦元素(模拟用户点击)
    inputEl.focus();
    //2. 使用setter方式修改值
    Object.getOwnPropertyDescriptor(HTMLInputElement.prototype, 'value').set.call(inputEl, newText);
    //3. 创建并触发input事件(让React检测到变化)
    const inputEvent = new Event('input', {bubbles: true, cancelable: true});
    inputEl.dispatchEvent(inputEvent);
    //4. 创建并触发change事件(确保所有监听器触发)
    const changeEvent = new Event('change', {bubbles: true});
    inputEl.dispatchEvent(changeEvent);
    //5. 移除焦点(模拟用户完成操作)
    inputEl.blur();
}

如若转载请注明出处,别当csdn的dog

相关推荐
breeze jiang5 天前
NestJS MVC 实战:用 hello 项目 7 个文件讲清分层、装饰器、依赖注入与错误处理
node.js·mvc·js
weixin_431600446 天前
前端数据埋点(1):一次点击如何变成一条埋点
前端·js·数据埋点
記億揺晃着的那天7 天前
NAS 内网域名访问为什么需要浏览器授权
网络·nginx·js·nas
—Qeyser8 天前
html 可视化海报模板编辑器
css·html·js
我命由我123458 天前
CesiumJS 笔记 - 获取容器中心点、Cartesian3 clone 方法、修改 Cartesian3 对象的高度
前端·javascript·css·前端框架·html·html5·js
其美杰布-富贵-李14 天前
第 8 篇:Three.js 材质系统
javascript·three.js·js
. . . . .1 个月前
EJS模板引擎
js
shawxlee1 个月前
vue3在public下封装config.js自定义配置动态数据,可在打包后直接修改,方便后端部署及后续维护
前端·javascript·经验分享·vue·团队开发·js·项目优化
陆康永1 个月前
JavaScript 数组填充:Array.from 与 Array.fill 用法详解及核心区别
js·array
熊猫钓鱼>_>1 个月前
ArkTS 方舟编程语言 · 原创快速入门教程
运维·架构·ts·harmonyos·arkts·鸿蒙·js