form

表单,将组件内的用户输入的<switch><input><checkbox><slider><radio><picker> 提交。

当点击 <form> 表单中 form-type 为 submit 的 <button> 组件时,会将表单组件中的 value 值进行提交,需要在表单组件中加上 name 来作为 key。

属性名类型说明最低版本
report-submitBoolean是否返回 formId 用于发送模板消息 。formId有很小的概率是无效的(如遇到网络失败或因违规使用被封禁接口的情况),如果无效,将返回 requestFormId:fail 开头的 formId
bindsubmitEventHandle携带 form 中的数据触发 submit 事件,event.detail = {value : {'name': 'value'} , formId: ''}
bindresetEventHandle表单重置时会触发 reset 事件

示例代码:

  1. <form bindsubmit="formSubmit" bindreset="formReset">
  2. <view class="section section_gap">
  3. <view class="section__title">switch</view>
  4. <switch name="switch" />
  5. </view>
  6. <view class="section section_gap">
  7. <view class="section__title">slider</view>
  8. <slider name="slider" show-value></slider>
  9. </view>
  10. <view class="section">
  11. <view class="section__title">input</view>
  12. <input name="input" placeholder="please input here" />
  13. </view>
  14. <view class="section section_gap">
  15. <view class="section__title">radio</view>
  16. <radio-group name="radio-group">
  17. <label>
  18. <radio value="radio1" />
  19. radio1
  20. </label>
  21. <label>
  22. <radio value="radio2" />
  23. radio2
  24. </label>
  25. </radio-group>
  26. </view>
  27. <view class="section section_gap">
  28. <view class="section__title">checkbox</view>
  29. <checkbox-group name="checkbox">
  30. <label>
  31. <checkbox value="checkbox1" />
  32. checkbox1
  33. </label>
  34. <label>
  35. <checkbox value="checkbox2" />
  36. checkbox2
  37. </label>
  38. </checkbox-group>
  39. </view>
  40. <view class="btn-area">
  41. <button form-type="submit">Submit</button>
  42. <button form-type="reset">Reset</button>
  43. </view>
  44. </form>
  1. Page({
  2. formSubmit(e) {
  3. console.log('form发生了submit事件,携带数据为:', e.detail.value)
  4. },
  5. formReset() {
  6. console.log('form发生了reset事件')
  7. }
  8. })

form