user-form.wxml 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <view class="user-form-page">
  2. <view class="hero-card">
  3. <view class="hero-badge">检测人资料</view>
  4. <view class="hero-title">{{isEditMode ? '编辑检测人' : '新增检测人'}}</view>
  5. <view class="hero-desc">与 APP 保持一致,支持昵称、性别、生日、身高、目标体重、国家、人种、职业。</view>
  6. </view>
  7. <view class="group-title">基础信息</view>
  8. <view class="form-card">
  9. <view class="form-label">昵称 <text class="required-mark">*</text></view>
  10. <input class="form-input" maxlength="20" placeholder="请输入昵称" bindinput="updateNickName" value="{{form.nickName}}" />
  11. </view>
  12. <view class="form-card">
  13. <view class="form-label">性别 <text class="required-mark">*</text></view>
  14. <picker range="{{sexOptions}}" value="{{sexIndex}}" bindchange="changeSex">
  15. <view class="form-picker">{{sexOptions[sexIndex]}}</view>
  16. </picker>
  17. </view>
  18. <view class="form-card">
  19. <view class="form-label">生日 <text class="required-mark">*</text></view>
  20. <picker mode="date" value="{{form.birthday}}" start="1920-01-01" end="2026-12-31" bindchange="updateBirthday">
  21. <view class="form-picker">{{form.birthday}}</view>
  22. </picker>
  23. </view>
  24. <view class="form-card">
  25. <view class="form-label">身高 <text class="required-mark">*</text></view>
  26. <picker range="{{heightOptions}}" range-key="label" value="{{heightIndex}}" bindchange="changeHeight">
  27. <view class="form-picker">{{heightOptions[heightIndex].label}}</view>
  28. </picker>
  29. </view>
  30. <view class="form-card">
  31. <view class="form-label">目标体重</view>
  32. <picker range="{{targetWeightOptions}}" range-key="label" value="{{targetWeightIndex}}" bindchange="changeTargetWeight">
  33. <view class="form-picker">{{targetWeightOptions[targetWeightIndex].label}}</view>
  34. </picker>
  35. </view>
  36. <view class="group-title">补充信息</view>
  37. <view class="form-card">
  38. <view class="form-label">国家</view>
  39. <picker range="{{countryOptions}}" range-key="label" value="{{countryIndex}}" bindchange="changeCountry">
  40. <view class="form-picker">{{countryOptions[countryIndex].label}}</view>
  41. </picker>
  42. </view>
  43. <view class="form-card">
  44. <view class="form-label">人种</view>
  45. <picker range="{{raceOptions}}" range-key="label" value="{{raceIndex}}" bindchange="changeRace">
  46. <view class="form-picker">{{raceOptions[raceIndex].label}}</view>
  47. </picker>
  48. </view>
  49. <view class="form-card">
  50. <view class="form-label">职业</view>
  51. <picker range="{{occupationOptions}}" range-key="label" value="{{occupationIndex}}" bindchange="changeOccupation">
  52. <view class="form-picker">{{occupationOptions[occupationIndex].label}}</view>
  53. </picker>
  54. </view>
  55. <view class="submit-btn {{saving ? 'submit-btn-disabled' : ''}}" bindtap="submitForm">{{saving ? '保存中...' : '保存检测人'}}</view>
  56. </view>