add.wxml 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229
  1. <view class="container FlexColumn" style='min-height:{{Containnerheight}}rpx;' hidden='{{!HiddenFieldEdit}}'>
  2. <view class="panelTop FlexRow">
  3. <view class="panelTopLeft FlexRow" catchtap="onSearch">
  4. <view class="add">+</view> 资料
  5. </view>
  6. <view class='panelTopLeft FlexRow' catchtap="gotoTest" wx:if="{{UpdateType=='add' || UpdateType=='add2'}}">
  7. <view class="add">+</view> 检验
  8. </view>
  9. </view>
  10. <view style='height:120rpx'></view>
  11. <view class="panelTitle FlexRow">
  12. <view class="panelTitle1">段落</view>
  13. </view>
  14. <block wx:for="{{[1,2,3]}}" wx:key="indexParent" wx:for-index="indexParent" wx:for-item="itemParent">
  15. <view class="lineWidthAll FlexRow" wx:if="{{indexParent>0}}">
  16. <view class="lineWidth750"></view>
  17. </view>
  18. <view class="panelItem FlexRow" bindtap='gotoAddItem' data-fieldid="{{itemParent}}">
  19. <view class="panelItem11 FlexColumn">
  20. <view class="number2 number" wx:if="{{!Field[itemParent] || Field[itemParent].length==0}}">{{itemParent}}</view>
  21. <view class="number" wx:if="{{Field[itemParent] && Field[itemParent].length>0}}">{{itemParent}}</view>
  22. </view>
  23. <view class="panelItem21 FlexRow">
  24. <text class="textNull" wx:if="{{!Field[itemParent] || Field[itemParent].length==0}}">
  25. <block wx:if="{{itemParent==1}}">题目</block>
  26. <block wx:if="{{itemParent==2}}">答案</block>
  27. <block wx:if="{{itemParent==3}}">其它</block>
  28. </text>
  29. <block wx:for="{{Field[itemParent]}}" wx:key="index">
  30. <text class="textNormal" wx:if="{{item.Type=='normal'}}">{{item.Content}}</text>
  31. <text class="textNormal FlexRow" wx:if="{{item.Type=='line'}}">
  32. <block wx:for="{{item.Content}}" wx:key="contentIndex" wx:for-item="contentItem">
  33. <text wx:if="{{contentItem.key=='normal'}}">{{contentItem.value}}</text>
  34. <text class="textLine" wx:if="{{contentItem.key=='line'}}">{{contentItem.value}}</text>
  35. <text class="textHighlighter" wx:if="{{contentItem.key=='highlighter'}}">{{contentItem.value}}</text>
  36. </block>
  37. </text>
  38. <view class="sound FlexRow" wx:if="{{item.Type=='sound'}}">
  39. <image class="universalpic_read_mark_black_20x20" src='../images/universalpic_read_mark_black_20x20.png' />
  40. </view>
  41. <text class="textPinyin" wx:if="{{item.Type=='sound'}}">{{item.Content}}</text>
  42. <view class="panelRecorder FlexRow" wx:if="{{item.Type=='recorder'}}">
  43. <image class="universalpic_voicerecorder_transmit_black_44x34" src='../images/universalpic_voicerecorder_transmit_black_44x34.png' />
  44. </view>
  45. <image class="imageFree" mode="widthFix" wx:if="{{item.Type=='image'}}" src='{{item.Content}}' binderror="onBindError" />
  46. <view class="textBr" wx:if="{{item.Type=='br'}}"></view>
  47. <text class="textReturn" wx:if="{{item.Type=='return'}}"></text>
  48. </block>
  49. </view>
  50. </view>
  51. <block wx:if="{{Tags && Tags.length>0 && indexParent==0}}">
  52. <view class="panelTag FlexColumn">
  53. <view class="panelTag1">自动记号</view>
  54. <view class="lineWidthAll FlexRow">
  55. <view class="lineWidth640"></view>
  56. </view>
  57. <view class='panelTag1 FlexRow'>
  58. <block wx:for="{{Tags}}" wx:key="indexTag" wx:for-index="indexTag">
  59. <view class="panelTag2 FlexRow" bindtap='deleteItem' data-id="{{indexTag}}">
  60. <view class="tag1">{{item}}</view>
  61. <image src='../images/universalpic_del_gray_14x14.png' class="universalpic_del_gray_14x14" />
  62. </view>
  63. </block>
  64. </view>
  65. <view style='height:30rpx;'></view>
  66. </view>
  67. </block>
  68. </block>
  69. <view class='lineFooter'></view>
  70. <view class="panelTimePlan FlexRow" bindtap="showPracticeTime" wx:if="{{IsShowPracticeTimeStart}}">
  71. <view class="panelItem1 FlexRow">
  72. <image src='../images/universalpic_clock_gray_24x24.png' class="universalpic_clock_gray_24x24" />
  73. <view>练习时间</view>
  74. </view>
  75. <view class="panelItem2 FlexRow">
  76. <view class="panelTimePlan1">{{PracticeTimeStr2}}</view>
  77. <image src='../images/universalpic_indicator_right_gray.png' class="Arrow" />
  78. </view>
  79. </view>
  80. <view class="panelTimePlan0 panelTimePlan FlexRow" bindtap="showPracticeTime" wx:if="{{!IsShowPracticeTimeStart}}">
  81. <view class="panelItem1 FlexRow">
  82. <image src='../images/universalpic_clock_white_24x24.png' class="universalpic_clock_gray_24x24" />
  83. <view>练习时间</view>
  84. </view>
  85. <view class="panelItem2 FlexRow">
  86. <view class="panelTimePlan2 panelTimePlan1">{{PracticeTimeStr2}}</view>
  87. <image src='../images/universalpic_indicator_right_gray.png' class="Arrow" />
  88. </view>
  89. </view>
  90. <view style='height:300rpx;'></view>
  91. <view class='panelSave FlexColumn'>
  92. <view class="panelSave00 FlexRow">
  93. <view class="panelSave1" catchtap='onGotoList' wx:if="{{UpdateType=='add' || UpdateType=='add2'}}">
  94. 复查
  95. </view>
  96. <view class="panelSave1" catchtap='onClose' wx:if="{{UpdateType!='add' && UpdateType!='add2'}}">
  97. 复查
  98. </view>
  99. <view class='panelSave2' bindtap="saveCard">
  100. 保存
  101. </view>
  102. <view class="panelSave1" bindtap="onPreview">
  103. 预览
  104. </view>
  105. </view>
  106. <view class="iphone10plus" wx:if="{{IsIPhoneX}}"></view>
  107. </view>
  108. </view>
  109. <!-- 更多功能 -->
  110. <view wx:if="{{IsPracticeTime}}" class="numberContainer FlexColumn" style='height:{{Containnerheight}}rpx;'>
  111. <view class="numberContainerFooter1 FlexColumn">
  112. <view class='lineFooter'></view>
  113. <view class='numberContainerFooter101 FlexRow'>
  114. <image class="universalpic_bell_black_30x30" src='../images/universalpic_bell_black_30x30.png' />
  115. <view class='numberContainerFooter11 FlexColumn'>
  116. <view class='numberContainerFooter111'>调整练习时间</view>
  117. <view class='numberContainerFooter112 FlexRow'>
  118. <view class='numberContainerFooter1121' wx:for="{{PracticeTimeArr}}" wx:key="index" catchtap='onPracticeTime' data-value='{{item.Name}}'>{{item.Name}}</view>
  119. </view>
  120. </view>
  121. </view>
  122. </view>
  123. <view class='lineFooter'></view>
  124. <view class="numberContaineFooter FlexRow" catchtap='closePracticeTime'>
  125. <view>关闭</view>
  126. </view>
  127. </view>
  128. <!-- 字段编辑 -->
  129. <view class="addItem container FlexColumn" style='height:{{Containnerheight}}rpx;' hidden='{{HiddenFieldEdit || IsRecorder}}'>
  130. <view class="panelItemTag FlexRow">
  131. <view class='left FlexRow'>
  132. <view class="panelSaveTag1 FlexRow" bindtap="onSearchField">
  133. <view class="add">+</view> 资料
  134. </view>
  135. <view class="panelSaveTag2 panelSaveTag1 FlexRow" bindtap="addSymbol" data-id="{{LineSign}}" hidden="{{LineSign=='[/线]'}}">
  136. <image class="universalpic_underline_begin_gray_14x20" src='../images/universalpic_underline_begin_gray_14x20.png' />
  137. </view>
  138. <view class="panelSaveTag3 panelSaveTag1 FlexRow" bindtap="addSymbol" data-id="{{LineSign}}" hidden="{{LineSign=='[线]'}}">
  139. <image class="universalpic_underline_end_white_30x22" src='../images/universalpic_underline_end_white_30x22.png' />
  140. </view>
  141. <view class="panelSaveTag2 panelSaveTag1 FlexRow" bindtap="addSymbol" data-id="{{HighlighterSign}}" hidden="{{HighlighterSign=='[/光]'}}">
  142. <image class="universalpic_highlighter_begin_gray_24x20" src='../images/universalpic_highlighter_begin_gray_24x20.png' />
  143. </view>
  144. <view class="panelSaveTag3 panelSaveTag1 FlexRow" bindtap="addSymbol" data-id="{{HighlighterSign}}" hidden="{{HighlighterSign=='[光]'}}">
  145. <image class="universalpic_highlighter_begin_gray_24x20" src='../images/universalpic_highlighter_end_white_24x20.png' />
  146. </view>
  147. <view class="panelSaveTag2 panelSaveTag1 FlexRow" bindtap="addSymbol" data-id="{{SoundSign}}" hidden="{{SoundSign=='[/读]'}}">
  148. <image class="universalpic_read_begin_gray_20x20" src='../images/universalpic_read_begin_gray_20x20.png' />
  149. </view>
  150. <view class="panelSaveTag3 panelSaveTag1 FlexRow" bindtap="addSymbol" data-id="{{SoundSign}}" hidden="{{SoundSign=='[读]'}}">
  151. <image class="universalpic_read_end_white_38x22" src='../images/universalpic_read_end_white_38x22.png' />
  152. </view>
  153. <view class="panelSaveTag2 panelSaveTag1 FlexRow" catchtap="uploadImageField" wx:if="{{IsShow==1}}">
  154. <image class="universalpic_picture_gray_26x26" src='../images/universalpic_picture_gray_26x26.png' />
  155. </view>
  156. <view class="panelSaveTag2 panelSaveTag1 FlexRow" catchtap="recorderAccredit" wx:if="{{IsShow==1}}">
  157. <image class="universalpic_voicerecorder_normal_gray_21x26" src='../images/universalpic_voicerecorder_normal_gray_21x26.png' />
  158. </view>
  159. </view>
  160. <view class='right FlexRow'>
  161. <view class="clear" catchtap="clear">清空</view>
  162. </view>
  163. </view>
  164. <view class='lineFooter'></view>
  165. <view class='panelInput'>
  166. <textarea class="input" maxlength='-1' show-confirm-bar="true" value="{{FieldContent}}" focus="{{Focus}}" cursor="{{Cursor}}" bindinput="bindinputField" bindblur="onBindblur" bindfocus="onBindFocus" data-id='{{FieldNumber}}' />
  167. </view>
  168. <view class='lineFooter'></view>
  169. <view class='panelBtnItem FlexColumn'>
  170. <scroll-view scroll-x="true" class="panelBtnSmall" bindscroll="bindscrollHandler">
  171. <view class="btn0"></view>
  172. <view class="btn" bindtap="addSymbol" wx:for="{{SymbolMain}}" wx:key="index" data-id="{{item.Name}}">{{item.Name}}</view>
  173. <view class="btn2 btn" bindtap="gotoSymbol">更多</view>
  174. </scroll-view>
  175. <view class='lineFooter'></view>
  176. <view class='panelBtn FlexRow'>
  177. <view class='text1' bindtap="closeAddItem" data-idsave="false">取消</view>
  178. <view class='line1'></view>
  179. <view class='text2 text1' bindtap="closeAddItem" data-idsave="true">确定</view>
  180. </view>
  181. <view class='lineFooter'></view>
  182. </view>
  183. </view>
  184. <!-- 录音功能 -->
  185. <view wx:if="{{IsRecorder}}" class="numberContainer FlexColumn" style='height:{{Containnerheight}}rpx;'>
  186. <view class='RecorderPanel2 FlexRow' wx:if="{{!FieldContent}}">
  187. <image class="edit_voicerecorder_illus" src='../images/edit_voicerecorder_illus.png' />
  188. </view>
  189. <view class="RecorderPanel3 FlexColumn" wx:if="{{FieldContent}}" style='height:{{Containnerheight-449}}rpx;'>
  190. <view class='RecorderPanel31 FlexColumn'>
  191. <text class='RecorderPanel311'>以下是段落中的内容\n可以把材料提前写入段落,方便照着录音</text>
  192. </view>
  193. <textarea class="RecorderPanel32" maxlength='-1' value="{{FieldContent}}" />
  194. </view>
  195. <view class='RecorderPanel1 FlexColumn'>
  196. <view class='RecorderPanel11 FlexRow'>
  197. <view class='RecorderPanel111 FlexRow'>
  198. <image class="universalpic_voicerecorder_black_30x30" src='../images/universalpic_voicerecorder_black_30x30.png' />
  199. <view class='RecorderPanel1111'>1分钟录音</view>
  200. </view>
  201. <view class='{{RecorderTimeCss}} RecorderPanel112'>{{RecorderTime}}</view>
  202. </view>
  203. <view class='btnRecorderStart' hover-start-time="50" hover-class="btnRecorderEnd" catchtouchstart='btnRecorderStart' catchtouchend='btnRecorderEnd' wx:if="{{!IsRecorderFinished}}">{{BtnRecorderName}}</view>
  204. <view class='RecorderPanel12 FlexRow' wx:if="{{IsRecorderFinished}}">
  205. <view class='btnRecorderStart2 btnRecorderStart' hover-class="btnRecorderEnd" catchtap='showRecorder'>重录</view>
  206. <view class='btnRecorderStart2 btnRecorderStart' hover-class="btnRecorderEnd" catchtap='btnRecorderPlay'>{{RecorderPlayName}}</view>
  207. <view class='btnRecorderStart3 btnRecorderStart' hover-class="btnRecorderEnd" catchtap='btnRecorderSave'>上传</view>
  208. </view>
  209. </view>
  210. <view class="numberContaineFooter2 numberContaineFooter FlexRow" catchtap='closeRecorder'>
  211. <view>退出录音</view>
  212. </view>
  213. </view>