文本框有编辑后自动查询的事件,只有当输入中文编辑时,下面数据集会报错,中文输入后是不会报错

image.pngimage.pngimage.pngimage.png

FineReport 轻舟已过万重山 发布于 2025-6-20 17:12 (编辑于 2025-6-20 17:25)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
技术支持--哈哈Lv4初级互助
发布于2025-6-20 17:21
原因分析
  1. 中文输入法在输入过程中会触发多次编辑事件

  2. 可能由于输入法组合状态导致查询参数传递不完整

解决方案
  1. 修改事件触发逻辑


    setTimeout(function(){

    _g().parameterCommit();

    }, 300); // 延迟300ms确保输入完成
    • 在文本框的「编辑结束」事件中使用以下代码替代直接查询:

  2. 检查数据连接配置


    [mysqld]

    character-set-server=utf8mb4

    [mysql]

    default-character-set=utf8mb4
    • 确认MySQL数据库字符集设置为utf8mb4,避免中文存储问题

  3. 输入法兼容性设置

    • 在文本框属性中勾选「允许输入法编辑」选项

    • 设置输入延迟时间为300-500ms

编辑结束事件设置

注意:如果问题仍然存在,建议检查数据集SQL中是否包含对中文字符的特殊处理需求。

最佳回答
0
ScyalcireLv7高级互助
发布于2025-6-20 17:35(编辑于 2025-6-20 17:42)

replace函数处理一下就行

--------

SELECT * FROM table WHERE field = REPLACE('${param}', '''', '''''')

  • 3关注人数
  • 46浏览人数
  • 最后回答于:2025-6-20 17:42
    请选择关闭问题的原因
    确定 取消
    返回顶部