index.ttml 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. <view class="trial-page">
  2. <view class="hero">
  3. <text class="title">申请试用</text>
  4. <text class="subtitle">完整真实填写以下信息,即可免费申请软件试用。</text>
  5. </view>
  6. <view class="form-card">
  7. <view class="form-item">
  8. <text class="label">职业</text>
  9. <view class="option-group">
  10. <view
  11. class="option-item {{formData.occupation === '学生' ? 'option-item-active' : ''}}"
  12. data-field="occupation"
  13. data-value="学生"
  14. bindtap="handleSelectOption"
  15. >
  16. 学生
  17. </view>
  18. <view
  19. class="option-item {{formData.occupation === '教师' ? 'option-item-active' : ''}}"
  20. data-field="occupation"
  21. data-value="教师"
  22. bindtap="handleSelectOption"
  23. >
  24. 教师
  25. </view>
  26. </view>
  27. </view>
  28. <view class="form-item">
  29. <text class="label">姓名</text>
  30. <input
  31. class="input"
  32. placeholder="请输入姓名"
  33. value="{{formData.name}}"
  34. data-field="name"
  35. bindinput="handleInputChange"
  36. />
  37. </view>
  38. <view class="form-item">
  39. <text class="label">性别</text>
  40. <view class="option-group">
  41. <view
  42. class="option-item {{formData.gender === '男' ? 'option-item-active' : ''}}"
  43. data-field="gender"
  44. data-value="男"
  45. bindtap="handleSelectOption"
  46. >
  47. </view>
  48. <view
  49. class="option-item {{formData.gender === '女' ? 'option-item-active' : ''}}"
  50. data-field="gender"
  51. data-value="女"
  52. bindtap="handleSelectOption"
  53. >
  54. </view>
  55. </view>
  56. </view>
  57. <view class="form-item">
  58. <text class="label">手机号</text>
  59. <view class="input-with-btn">
  60. <input
  61. class="input input-flex"
  62. type="number"
  63. maxlength="11"
  64. placeholder="请输入手机号"
  65. value="{{formData.phone}}"
  66. data-field="phone"
  67. bindinput="handleInputChange"
  68. />
  69. <button
  70. class="code-btn"
  71. bindtap="handleSendCode"
  72. disabled="{{isSendingCode || isLoadingImgCode || countdown > 0}}"
  73. >
  74. {{countdown > 0 ? (countdown + 's后重发') : '获取验证码'}}
  75. </button>
  76. </view>
  77. </view>
  78. <view class="form-item" tt:if="{{isCodeSent}}">
  79. <text class="label">验证码</text>
  80. <input
  81. class="input"
  82. type="number"
  83. maxlength="6"
  84. placeholder="请输入验证码"
  85. value="{{formData.code}}"
  86. data-field="code"
  87. bindinput="handleInputChange"
  88. />
  89. </view>
  90. <button class="submit-btn" bindtap="handleSubmit" disabled="{{isSubmitting}}" loading="{{isSubmitting}}">提交申请</button>
  91. <view class="tips-box">
  92. <text class="tips-title">提示说明</text>
  93. <text class="tips-line">1. 职业选择“学生”:请前往 APP 应用商店搜索名称为“音乐数字课堂”进行下载并体验。</text>
  94. <text class="tips-line">2. 职业选择“老师”:请下载安装 Chrome 浏览器,并在地址栏输入 kt.colexiu.com 访问体验。</text>
  95. <text class="tips-line">3. 同一手机号仅可申请试用一次,不可重复申请。</text>
  96. </view>
  97. </view>
  98. <view class="page-tabbar">
  99. <view class="page-tab-item" bindtap="handleGoProduct">
  100. <text class="page-tab-text">产品介绍</text>
  101. </view>
  102. <view class="page-tab-item page-tab-item-active" bindtap="handleGoTrial">
  103. <text class="page-tab-text page-tab-text-active">申请试用</text>
  104. </view>
  105. </view>
  106. <view class="img-code-mask" tt:if="{{showImgCodePanel}}">
  107. <view class="img-code-dialog">
  108. <view class="img-code-close" bindtap="handleCloseImgCodeModal">×</view>
  109. <text class="img-code-title">输入图形验证码</text>
  110. <view class="img-code-content">
  111. <input
  112. class="img-code-input"
  113. maxlength="8"
  114. placeholder="请输入验证码"
  115. value="{{imgCodeInput}}"
  116. bindinput="handleImgCodeInput"
  117. />
  118. <view class="img-code-right">
  119. <image
  120. class="img-code-image"
  121. src="{{imgCodeImage}}"
  122. mode="aspectFit"
  123. bindtap="handleRefreshImgCode"
  124. />
  125. <text class="img-code-refresh" bindtap="handleRefreshImgCode">
  126. {{isLoadingImgCode ? '加载中...' : '看不清?换一换'}}
  127. </text>
  128. </view>
  129. </view>
  130. </view>
  131. </view>
  132. <view class="submit-tip" tt:if="{{showSubmitTip}}">
  133. <text class="submit-tip-text">{{submitTipText}}</text>
  134. </view>
  135. </view>