开发者社区
社区提问意见反馈
开发者钉组织
扫描二维码
加入支付宝开发者钉组织
文档中心
凯发app官方网站的技术支持 & 案例 faq 
支付宝小程序
案例分析
sdk & demo下载
常见问题
常用工具
iot小程序
运维保障
小程序 > 支付宝小程序 > 常见问题 > 表单组件常见问题
贡献者
收藏
我的文档
设置
input组件常见问题
注意:
ios 系统支付宝客户端版本10.1.80及以上不支持 focus=true 自动唤起。
小程序中 input 如果父类是 position: fixed,可以加上 enablenative="{{false}}",解决输入框错位/光标上移问题。个别情况下定位问题会导致光标错位,所以需要把 false 改为 true,代码块为 enablenative="{{true}}"。 
人民币符号显示一横
遇到人民币符号只显示一横的问题,主要原因是不同rom厂商定制问题,现在遇到华为和oppo,在系统短信输入框内输入¥(uffe5) 只显示一横,所以不是小程序容器或者客户端的问题。
符号:¥ ascii:uffe5 显示:有的rom是一横。
符号:¥ ascii:u00a5 显示:都是两横(建议使用)。
正确输入方法:
在简体中文输入法如微软拼音、搜狗拼音输入法或fcitx中,直接按下 $ 键会输入全角字符 ¥(uffe5),而非半角双横线字符 ¥(u00a5)。用户可以通过自定义词典、符号等方式方便输入 ¥。 
ios input组件focus属性不起作用
ios 系统支付宝客户端版本 10.1.80 及以上不支持 focus=true 自动唤起。 
input修改字体没有效果
input 字体无法修改。只能修改 placeholder 占位符的字体,value的字体修改不了。 
input组件两个输入框来回点击软键盘收起后出现空白
可以在 input 组件中添加 enablenative="{{false}}" 属性和属性值来解决。
例如: 。
input和textarea通过setdata清空数据不生效
需要添加属性 controlled="{{true}}" 表示 value 内容会完全受 setdata 控制。
也可以在 oninput 事件里把输入的值通过 setdata 再赋值给 value,再去 setdata 设置 value 为空时就能生效。 
setdata刷新input的value值无效
需要在 input 组件里加上 controlled="{{true}}"属性,表示value内容会完全受 setdata 控制,默认值是 false。 
input光标的颜色是否可以设置
目前小程序没有提供设置 input 组件光标颜色的属性。 
input如何用js代码清空数据
需要添加属性 controlled="{{true}}",也可以在 oninput 事件里把输入的值通过 setdata 再赋值给 value,再去 setdata 设置 value。
示例代码:
判断input的value是否符合正则表示式
使用 var reg = new regexp("\\w \\s", "g"); getregexp() 需要在 sjs 中使用。 sjs 脚本不能直接在 js 中引入调用。 
input组件光标focus时发生位移
小程序中 input 如果父类是 position: fixed,可以加上 enablenative="{{false}}",解决输入框错位/光标上移问题。
个别情况下定位问题会导致光标错位,需要把 false 改为 true,代码块为 enablenative="{{true}}"。
input 输入框在 ios 客户端的光标漂移可按照以下步骤设置:
步骤一:若已在 input 中设置了 enablenative 属性,删除 enablenative 属性的全部设置。
步骤二:在 app.json 文件 window 对象内,设置 "enableinpagerenderinput":"yes"。
注意:建议通过my.getsysteminfo获取手机系统名platform来分别做兼容。 
input输入框setdata为空字符串"",第一次有效,之后无效
input 输入框,利用 button 控制清空其 value 值,第一次有效,然后输入一些字符串,再次点击 button 清空无效。
原因:利用 this.setdata,已经给变量赋值为"",第二次(含)以后因为变量已经是"",所以无效。
解决办法:input 输入框的 oninput 绑定事件,输入时触发,此时调用 this.setdata 给变量赋值,oninput 和 button 点击事件结合,可以解决清空无效问题。
其它问题:真机上输入操作时,不管是输入还是删除,由于一直在不停调用this.setdata方法,导致光标位移以及输入和删除混乱,为提升用户体验,可以增加防抖功能。 
input输入的内容没有在输入框显示
1、使用了 fixed 定位布局,建议更换 fixed 定位布局使用相对或者绝对定位。
2、检查是否有其它元素层级过高遮挡了 input。
3、使用文档上提供的二维码测试当前机型是否正常,如正常可参考 demo 的写法。 
input输入框聚焦的时候出现白屏只有键盘弹出来
因为使用 fixed 布局导致键盘把页面 input 内容顶上去,可以加上 enablenative="{{false}}",解决输入框错位/光标上移问题。个别情况下定位问题会导致光标错位,所以需要把 false 改为 true,代码块为 enablenative="{{true}}",推荐使用 searchbar 搜索框。 
textarea组件常见问题
无法通过 textarea 获取键盘高度;
ios 系统支付宝客户端版本 10.1.80 及以上不支持 focus=true 自动唤起。
可以使用 my.hidekeyboard 隐藏键盘。
添加属性 controlled="{{true}}" 表示 value 内容会完全受 setdata 控制。
可以在 input 组件中加上 enablenative="{{false}}",避免 textarea 弹出键盘后内容被顶上去。
加上 enablenative="{{false}}" 解决安卓系统下 textarea 获取焦点的时候文字消失问题。 
textarea组件光标发生位移
可以在 input 组件中加上 enablenative="{{false}}",避免 textarea 弹出键盘后内容被顶上去。
加上 enablenative="{{false}}" 解决安卓系统下 textarea 获取焦点的时候文字消失问题。 
textarea标签是否可以设置为不限制最大长度
可以设置 maxlength 参数,值为 -1 时,就表示不限制最大长度。 
textarea多行输入框高度能自定义吗
可自行通过 style/acss 样式修改 textarea(多行输入框)height 高度或使用 auto-height:true (自动增高)。 
textearea的字数统计
textearea 组件中有字数统计的属性 show-count 显示字数统计。
注意:如果进行数据的统计可以在数据发生变化的时候,对整体的值进行 .length 来计算长度。 
textarea里的文本如何换行
textarea 组件输入内容满一行会自动换行。
说明:设置 word-break:break-all 可能会导致无法换行,建议设置为 normal 或者不做设置。 
input和textarea通过setdata清空数据不生效
需要添加属性 controlled="{{true}}" 表示 value 内容会完全受 setdata 控制。
也可以在 oninput 事件里把输入的值通过 setdata 再赋值给 value,再去 setdata 设置 value 为空时就能生效。
内容没有解决您的问题?您还可以前往 或 寻求帮助
凯发k8官方网娱乐官方 copyright © 2022 支付宝(杭州)信息技术有限公司  | icp证浙b2-20160559
该文档对你是否有帮助?
当前页面目录
网站地图