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

相关推荐
珊瑚怪人5 小时前
分享一个Edge浏览器播放H265 RTSP流的问题,涉及到ZLMediaKit、WebRTC
音视频·视频·js·zlmediakit·视频流处理
双普拉斯21 小时前
打造工业级全栈文件管理器:深度解析上传、回收站与三重下载流控技术
spring·vue·js
zhensherlock2 天前
Protocol Launcher 系列:Overcast 一键订阅播客
前端·javascript·typescript·node.js·自动化·github·js
拆房老料4 天前
5分钟上手 OnlyOffice 连接器,打通业务系统与文档编辑器
编辑器·开源软件·js
zhensherlock9 天前
Protocol Launcher 系列:Mail Assistant 轻松发送 HTML 邮件
前端·javascript·typescript·node.js·html·github·js
cuoluoche9 天前
postman接口请求response是base64-图片这类的可视化。
js
Huanzhi_Lin10 天前
关于V8/MajorGC/MinorGC——性能优化
javascript·性能优化·ts·js·v8·新生代·老生代
百撕可乐10 天前
WenDoraAi官网NextJS实战03:项目插件与Header组件
react.js·js
我命由我1234511 天前
React - 组件优化、children props 与 render props、错误边界
前端·javascript·react.js·前端框架·html·ecmascript·js
我命由我1234513 天前
在 React 项目中,配置了 setupProxy.js 文件,无法正常访问 http://localhost:3000
开发语言·前端·javascript·react.js·前端框架·ecmascript·js