多行输入框(textarea)
| 属性名 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| name | String | - | 组件名字,用于表单提交获取数据 |
| value | String | - | 初始内容 |
| placeholder | String | - | 占位符 |
| placeholder-style | String | - | 指定 placeholder 的样式 |
| placeholder-class | String | - | 指定 placeholder 的样式类 |
| disabled | Boolean | false | 是否禁用 |
| maxlength | Number | 140 | 最大长度,当设置为-1时不限制最大长度 |
| focus | Boolean | false | 获取焦点(iOS 不支持) |
| auto-height | Boolean | false | 是否自动增高 |
| show-count | Boolean | true | 是否渲染字数统计功能 |
| controlled | Boolean | false | 是否为受控组件。为true时,value内容会完全受setData控制 |
| onInput | EventHandle | - | 键盘输入时触发,event.detail = {value: value},可以直接 return 一个字符串以替换输入框的内容 |
| onFocus | EventHandle | - | 输入框聚焦时触发 event.detail = {value: value} |
| onBlur | EventHandle | - | 输入框失去焦点时触发,event.detail = {value: value} |
| onConfirm | EventHandle | - | 点击完成时触发,event.detail = {value: value} |
图示
代码示例
<view class="section"><textarea onBlur="bindTextAreaBlur" auto-height placeholder="自动变高" /></view><view class="section"><textarea placeholder="这个只有在按钮点击的时候才聚焦" focus="{{focus}}" /><view class="btn-area"><button onTap="bindButtonTap">使得输入框获取焦点</button></view></view><view class="section"><form onSubmit="bindFormSubmit"><textarea placeholder="form 中的 textarea" name="textarea"/><button form-type="submit"> 提交 </button></form></view>
Page({data: {focus: false,inputValue: ''},bindButtonTap() {this.setData({focus: true})},bindTextAreaBlur: function(e) {console.log(e.detail.value)},bindFormSubmit: function(e) {console.log(e.detail.value.textarea)}})
iOS 键盘与组件交互异常处理
对于需要启动键盘的组件,如 input、textarea 等,目前默认使用的是原生键盘。如果键盘和组件的交互存在异常,可在组件中添加enableNative=”{{false}}”属性(如下所示),即可恢复到使用 WKWebview 的键盘。同时由于使用的是系统键盘,也就不能使用 mPaaS 提供的 Native 键盘相关功能,键盘相关目前不再专门适配,如有交互异常问题请使用该方式进行处理。
<textarea value="{{inputValue}}" enableNative="{{false}}" maxlength="500" onInput="onInput" />

