小程序
小游戏
企业微信
微信支付
扫描小程序码分享
在js文件中定义一个对象a为空,模版文件里面一个input的值调用了a的一个属性,此时input的值为空,无法通过验证,页面上一个按钮。按了以后给该input赋值,赋值以后input依然被验证为空,请问这是啥情况
4 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
有人能帮忙看看么~
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
WEUI自带表单验证器 (validate),针对表单中控件初始赋了值,校验却一直提示为空的解决办法! 后面有问题解决的代码片段。
<mp-form id="form" rules="{{rules}}" models="{{formData}}">
此表单中的的data-field 为 mobile的输入框,在js中设置了初始值 user_info
<mp-cell prop="mobile" title="手机号" ext-class="" show-error><input bindinput="formInputChange" data-field="mobile" class="weui-input" placeholder="请输入手机号" number value="{{user_info}}"/></mp-cell>
这样页面进入后,该输入框里面会显示user_info 的赋值。但该表单进行提交校验时,校验器依然无法获取此处的赋值。 也就会一直报,手机号没有填写 这样的校验错误。
解决这个问题的办法:
js赋值的时候,这样写。
this.setData({
[`formData.mobile`]:'18611688767'
})
数组 [] 里面用英文单引号``包含 ”表单对象“.”控件的data-field“
本例子可以tapDialogButton(e) 方法中赋值
也可以在页面初始化中赋值
这样来操作,就可以解决上面的问题。
这是代码片段,点击可以直接导入微信开发工具
https://developers.weixin.qq.com/s/ASsRTbmZ74gW
补充一点,如果是Component页面的话,在lifetimes中的赋值只能卸载 ready中。之前试过在attached中赋值,页面会报错。正如注释写的,可以渲染节点,但无法操作节点,也就是无法进行赋值操作。
同上,input动态赋值后怎么触发change事件或让规则验证通过?
麻烦提供能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
有人能帮忙看看么~
WEUI自带表单验证器 (validate),针对表单中控件初始赋了值,校验却一直提示为空的解决办法! 后面有问题解决的代码片段。
<mp-form id="form" rules="{{rules}}" models="{{formData}}">
此表单中的的data-field 为 mobile的输入框,在js中设置了初始值 user_info
<mp-cell prop="mobile" title="手机号" ext-class="" show-error><input bindinput="formInputChange" data-field="mobile" class="weui-input" placeholder="请输入手机号" number value="{{user_info}}"/></mp-cell>
这样页面进入后,该输入框里面会显示user_info 的赋值。但该表单进行提交校验时,校验器依然无法获取此处的赋值。 也就会一直报,手机号没有填写 这样的校验错误。
解决这个问题的办法:
js赋值的时候,这样写。
this.setData({
[`formData.mobile`]:'18611688767'
})
数组 [] 里面用英文单引号``包含 ”表单对象“.”控件的data-field“
本例子可以tapDialogButton(e) 方法中赋值
也可以在页面初始化中赋值
这样来操作,就可以解决上面的问题。
这是代码片段,点击可以直接导入微信开发工具
https://developers.weixin.qq.com/s/ASsRTbmZ74gW
补充一点,如果是Component页面的话,在lifetimes中的赋值只能卸载 ready中。之前试过在attached中赋值,页面会报错。正如注释写的,可以渲染节点,但无法操作节点,也就是无法进行赋值操作。
同上,input动态赋值后怎么触发change事件或让规则验证通过?
this.data.formData['number'] = res.data[0].number 。还是不行。你赋值代码能发我看看吗?
麻烦提供能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)