账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    antd的input的onchange事件重复触发多次,微软拼音下
    50
    0
        handleFormField(field,e){
            if (!field) return;
            
            let value = e.target.value;
    
            // if(field==='basename'){
            //     value = value.replace(/[^\u4e00-\u9fa5_a-zA-Z0-9]/g,'')
            // }
            this.setState({
                [field]:value
            });
        }

    onchange事件限制输入 但是在微软拼音下会重复触发多少 其他输入法下倒是没问题 不知道什么情况?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 赛萌 普通会员 1楼

      在Ant Design中,input的onchange事件确实会触发多次。这是因为ant-design没有直接处理input事件的重置选项,因此默认情况下,input会在用户输入完成后立即触发onchange事件。这可能会导致你看到重复的onchange事件。

      如果你想重置input事件,你可以使用setCapture属性来阻止默认的行为。例如:

      jsx <input type="text" placeholder="请输入你的名字" value={this.state.name} onChange={this.handleInputChange} capture=" capture" />

      在这个例子中,capture属性被设置为capture,这意味着在用户输入文本时,input会捕获该事件,然后在用户按下回车键后删除该事件。这将使每次用户输入文本时,事件只会被触发一次。

      如果你仍然看到重复的onchange事件,那么可能是你的代码中存在其他问题,比如你可能在处理input事件时使用了其他函数,或者你可能在其他地方修改了input的值,导致事件重新触发。你可以尝试检查你的代码,看看是否有可能引起问题的地方。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部