ans-m.js 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119
  1. /**
  2. *
  3. * DWSurvey 3.0 中关于问卷设计Javascript
  4. *
  5. * @desc: design survey
  6. * @author: keyuan(@keyuan, keyuan258@gmail.com)
  7. * @github: https://github.com/wkeyuan/DWSurvey
  8. *
  9. * Copyright 2012, 2017 调问问卷(DWSurvey,http://dwsurvey.net)
  10. *
  11. */
  12. $(document).ready(function(){
  13. var ctx=$("#ctx").val();
  14. var sid = $.getUrlParam("sid");
  15. var surveyId = $.getUrlParam("surveyId");
  16. var tag = $.getUrlParam("tag");
  17. var ruleCode = $.getUrlParam("ruleCode");
  18. var wxCode = $.getUrlParam("code");
  19. $("#sid").val(sid);
  20. $("#id").val(surveyId);
  21. $("#tag").val(tag);
  22. $("#ruleCode").val(ruleCode);
  23. $("#wxCode").val(wxCode);
  24. if(tag!="" && (tag==="p" || tag==="s")){
  25. $("#preview_head_top").show();
  26. }else{
  27. $("#preview_head_top").remove();
  28. }
  29. querySurveyAll(function(){
  30. sww();
  31. if(!$("#preview_head_top")[0]){
  32. checkAnswerSurvey(sid);
  33. }
  34. wwwUpload();
  35. });
  36. });
  37. function sww(){
  38. var bfbFloat=0;
  39. $(document).ready(function(){
  40. $("#resultProgress").progressbar({value: bfbFloat,orientation: "vertical"});
  41. //分页设置 nextPage_a prevPage_a
  42. $(".nextPage_a").click(function(){
  43. if(validateForms()){
  44. var thParent=$(this).parent();
  45. var nextPageNo=thParent.find("input[name='nextPageNo']").val();
  46. // $(".li_surveyQuItemBody").hide();
  47. // $(".surveyQu_"+nextPageNo).fadeIn("slow");
  48. //$(window).scrollTop(10);
  49. var curPageNo = parseInt(nextPageNo)-1;
  50. $(".surveyQu_"+curPageNo).hide();
  51. var nextPageQus = $(".surveyQu_"+nextPageNo);
  52. $.each(nextPageQus,function(){
  53. var quItemBody = $(this);
  54. var itemBodyClass = quItemBody.attr("class");
  55. var quType = quItemBody.find(".quType").val();
  56. if(quType==="PAGETAG" || quType==="submitSurveyBtn"){
  57. quItemBody.show();
  58. }
  59. if(itemBodyClass.indexOf("hidFor")<0){
  60. quItemBody.show();
  61. }
  62. });
  63. var nextPageItems = $(".surveyQu_"+nextPageNo+":visible");
  64. if(nextPageItems[0]&&nextPageItems.size()<=1){
  65. $(nextPageItems[0]).find(".nextPage_a").click();
  66. }
  67. $("html,body").animate({scrollTop:10},500);
  68. }
  69. return false;
  70. });
  71. $(".prevPage_a").click(function(){
  72. var thParent=$(this).parent();
  73. var prevPageNo=thParent.find("input[name='prevPageNo']").val();
  74. // $(".li_surveyQuItemBody").hide();
  75. // $(".surveyQu_"+prevPageNo).fadeIn("slow");
  76. var curPageNo = parseInt(prevPageNo)+1;
  77. $(".surveyQu_"+curPageNo).hide();
  78. var prevPageQus = $(".surveyQu_"+prevPageNo);
  79. $.each(prevPageQus,function(){
  80. var quItemBody = $(this);
  81. var itemBodyClass = quItemBody.attr("class");
  82. //alert(itemBodyClass.indexOf("hidFor"));
  83. var quType = quItemBody.find(".quType").val();
  84. if(quType==="PAGETAG"){
  85. quItemBody.show();
  86. }
  87. if(itemBodyClass.indexOf("hidFor")<0){
  88. quItemBody.show();
  89. }
  90. });
  91. $(window).scrollTop(10);
  92. return false;
  93. });
  94. /**排序题*/
  95. $(".m_clickQuOrderItem").click(function(){
  96. var visibleOrderbyNum=$(this).parents(".surveyQuItem").find(".m_orderby_num:visible");
  97. var thOrderbyNum=$(this).find(".m_orderby_num");
  98. if($(this).find(".m_orderby_num:visible")[0]){
  99. }else{
  100. var thNum=0;
  101. $(this).append("<select class='m_orderby_sel' > </select>");
  102. var mOrderbySel=$(this).find(".m_orderby_sel");
  103. var quOrderItems=$(this).parents(".surveyQuItem").find(".m_clickQuOrderItem");
  104. $.each(quOrderItems,function(i,item){
  105. mOrderbySel.append("<option value='"+(i+1)+"'>移至排序"+(i+1)+"</option>");
  106. var targetHid=$(this).parents(".ui-controlgroup-controls ").find(".quOrderItemHidInput[value='"+(i+1)+"']");
  107. if(!targetHid[0] && thNum===0){
  108. thNum=(i+1);
  109. }
  110. });
  111. thOrderbyNum.text(thNum);
  112. thOrderbyNum.show();
  113. mOrderbySel.val(thNum)
  114. $(this).find(".quOrderItemHidInput").val(thNum);
  115. }
  116. bindEvent();
  117. runlogic($(this));
  118. validateCheck($(this).parents(".li_surveyQuItemBody"),false);
  119. answerProgressbar($(this));
  120. return false;
  121. });
  122. function bindEvent(){
  123. $(".m_orderby_sel").unbind();
  124. $(".m_orderby_sel").change(function(){
  125. //交换个排
  126. var thOrderbyItem=$(this).parents(".m_clickQuOrderItem");
  127. var thOrderByNum=thOrderbyItem.find(".quOrderItemHidInput").val();
  128. var thChangeNum=$(this).val();
  129. var targetHid=$(this).parents(".ui-controlgroup-controls ").find(".quOrderItemHidInput[value='"+thChangeNum+"']");
  130. if(targetHid[0]){
  131. var targetOrderbyItem=targetHid.parents(".m_clickQuOrderItem");
  132. targetOrderbyItem.find(".m_orderby_num").text(thOrderByNum);
  133. targetOrderbyItem.find(".quOrderItemHidInput").val(thOrderByNum);
  134. targetOrderbyItem.find(".m_orderby_sel").val(thOrderByNum);
  135. }
  136. thOrderbyItem.find(".m_orderby_num").text(thChangeNum);
  137. thOrderbyItem.find(".quOrderItemHidInput").val(thChangeNum);
  138. thOrderbyItem.find(".m_orderby_sel").val(thChangeNum);
  139. });
  140. }
  141. /**评分题*/
  142. $(".starRating .fa").hover(function(){
  143. var prevAll=$(this).prevAll();
  144. prevAll.removeClass("fa-star-o");
  145. prevAll.addClass("fa-star");
  146. $(this).removeClass("fa-star-o");
  147. $(this).addClass("fa-star");
  148. },function(){
  149. var scoreRow=$(this).parents(".scoreRow");
  150. var starNum=scoreRow.find(".scoreNumInput").val();
  151. if(starNum==""&&starNum<=0){
  152. var thParent=$(this).parent();
  153. var fas=thParent.find(".fa");
  154. fas.removeClass("fa-star");
  155. fas.addClass("fa-star-o");
  156. }
  157. });
  158. $(".starRating .fa").click(function(){
  159. var thParent=$(this).parent();
  160. var fas=thParent.find(".fa");
  161. fas.removeClass("fa-star");
  162. fas.addClass("fa-star-o");
  163. var prevAll=$(this).prevAll();
  164. prevAll.removeClass("fa-star-o");
  165. prevAll.addClass("fa-star");
  166. $(this).removeClass("fa-star-o");
  167. $(this).addClass("fa-star");
  168. var scoreRow=$(this).parents(".scoreRow");
  169. var starNum=0;
  170. if(prevAll[0]){
  171. starNum=prevAll.size();
  172. }
  173. scoreRow.find(".scoreNumInput").val(starNum+1);
  174. runlogic($(this));
  175. validateCheck($(this).parents(".li_surveyQuItemBody"),false);
  176. answerProgressbar($(this));
  177. return false;
  178. });
  179. //表单验证
  180. /**初始化表单骓证配置**/
  181. function validateForms(){
  182. var result=true;
  183. var surveyQuItemBodys=$(".li_surveyQuItemBody");
  184. var firstError=null;
  185. $.each(surveyQuItemBodys,function(){
  186. var quItemBody=$(this);
  187. if(!validateCheck(quItemBody,true)){
  188. //定位到这题
  189. if(firstError==null){
  190. firstError=quItemBody;
  191. }
  192. result=false;
  193. }
  194. });
  195. if(firstError!=null){
  196. $(window).scrollTop(firstError.offset().top);
  197. }
  198. if($("#jcaptchaImgBody").is(":visible")){
  199. var jcaptchaInput = $("input[name='jcaptchaInput']").val();
  200. if(jcaptchaInput===""){
  201. $("#jcaptchaImgBody .errorItem").show();
  202. result = false;
  203. }else{
  204. $("#jcaptchaImgBody .errorItem").hide();
  205. }
  206. }
  207. return result;
  208. }
  209. function checkoutData(checkType, value) {
  210. var validateStatus = true;
  211. if(value.length<=0){
  212. validateStatus = false;
  213. }
  214. if (checkType == "NO") {
  215. if(value.length<=0){
  216. validateStatus = false;
  217. }
  218. }else if (checkType == "EMAIL") {
  219. var __email = /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
  220. if (!__email.test(value)) {
  221. validateStatus = false;
  222. }
  223. } else if (checkType == "UNSTRCN") {
  224. var __cn = /^[\u3220-\uFA29]+$/;
  225. if (__cn.test(value)) {
  226. validateStatus = false;
  227. }
  228. } else if (checkType == "STRCN") {
  229. var __cn = /^[\u3220-\uFA29]+$/;
  230. if (!__cn.test(value)) {
  231. validateStatus = false;
  232. }
  233. } else if (checkType == "NUM") {
  234. // "number[/[+|-][int|integer|float|double|money|{位数正则}.{位数正则}]]"
  235. // var __regex = /^\d+(\.\d+)?$/;
  236. var __regex = /^(?:-?\d+|-?\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/;
  237. if (!__regex.test(value)) {
  238. validateStatus = false;
  239. }
  240. } else if (checkType == "DIGITS") {
  241. var __regex = /^\d+$/;
  242. if (!__regex.test(value)) {
  243. validateStatus = false;
  244. }
  245. } else if (checkType == "TELENUM") {
  246. var tel = /^\d{3,4}-{1}\d{7,9}-?\d{1,6}$/;
  247. var tel400800 = /^(400{1}-?[0-9]{3}-?[0-9]{4})|(800{1}-?[0-9]{3}-?[0-9]{4})$/
  248. if (!(tel.test(value) || tel400800.test(value))) {
  249. validateStatus = false;
  250. }
  251. } else if (checkType == "PHONENUM") {
  252. var length = value.length;
  253. var mobile = /^(((13[0-9]{1})|(15[0-9]{1})|(17[0-9]{1})|(18[0-9]{1}))+\d{8})$/;
  254. if (!(length == 11 && mobile.test(value))) {
  255. validateStatus = false;
  256. }
  257. } else if (checkType == "TELE_PHONE_NUM") {
  258. var mobile = /^(((13[0-9]{1})|(15[0-9]{1})|(17[0-9]{1})|(18[0-9]{1}))+\d{8})$/;
  259. var tel = /^\d{3,4}-{1}\d{7,9}-?\d{1,6}$/;
  260. var tel400800 = /^(400{1}-?[0-9]{3}-?[0-9]{4})|(800{1}-?[0-9]{3}-?[0-9]{4})$/
  261. if (!(tel400800.test(value) || tel.test(value) || mobile.test(value))) {
  262. validateStatus = false;
  263. }
  264. } else if (checkType == "DATE") {
  265. //日期的正则表达式
  266. /*var reg1 = /^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])$/;//2014-01-01
  267. var regExp1 = new RegExp(reg1);
  268. var reg2 = /^(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d$/;//12:00:00
  269. var regExp2 = new RegExp(reg2);
  270. var reg3 = /^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])\s+(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d$/;//2014-01-01 12:00:00
  271. var regExp3 = new RegExp(reg3);
  272. if(!(regExp1.test(value) || regExp3.test(value))){
  273. // alert("日期格式不正确,正确格式为:2014-01-01");
  274. errorType = "DATE";
  275. validateStatus = false;
  276. }*/
  277. if (/Invalid|NaN/.test(new Date(value).toString())) {
  278. validateStatus = false;
  279. }
  280. } else if (checkType == "IDENTCODE") {
  281. var check = /^\d{15}|(\d{17}(\d|x|X))$/.test(value);
  282. if (!(check && (value.length == 15 || value.length == 18))) {
  283. validateStatus = false;
  284. }
  285. } else if (checkType == "ZIPCODE") {
  286. var tel = /^[0-9]{6}$/;
  287. if (!tel.test(value)) {
  288. validateStatus = false;
  289. }
  290. } else if (checkType == "URL"){
  291. var strRegex = /^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})).?)(?::\d{2,5})?(?:[/?#]\S*)?$/i;
  292. if (!strRegex.test(value)) {
  293. validateStatus = false;
  294. }
  295. }
  296. return validateStatus;
  297. }
  298. $(".submitSurvey").click(function(){
  299. var btnId = $(this).attr("id");
  300. if(validateForms()){
  301. var thTxt = $(this).val();
  302. if($("#preview_head_top")[0]){
  303. alert("预览模式不可提交!");
  304. return false;
  305. }
  306. if(thTxt==="提交"){
  307. //$(".submitSurvey").parent("div").css({"background-color": "red"});
  308. $('.submitSurvey').attr('disabled',"");
  309. $(".submitSurvey").val("正在提交");
  310. setTimeout(function(){
  311. //$(".submitSurvey").parent("div").css({"background-color": "#373737"});
  312. $('.submitSurvey').removeAttr("disabled");
  313. $('.submitSurvey').val("提交");
  314. },5000);
  315. if(btnId=="previewSubmitSurvey"){
  316. alert("当前为预览模式,不能提交答卷!");
  317. }else{
  318. $("#surveyForm").submit();
  319. }
  320. }else{
  321. alert("5秒内禁止重复提交!");
  322. }
  323. }
  324. return false;
  325. });
  326. var focusFbk=null;
  327. //绑定操作事件
  328. //绑定操作事件
  329. $("#dwSurveyQuContent .dwQuOptionItemContent").unbind();
  330. $("#dwSurveyQuContent .dwQuOptionItemContent").click(function(){
  331. if(focusFbk!=null){
  332. focusFbk.blur();
  333. }
  334. clickItem($(this));
  335. // runlogic($(this).parents(".li_surveyQuItemBody"),$(this));
  336. answerProgressbar($(this));
  337. validateCheck($(this).parents(".li_surveyQuItemBody"),false);
  338. return false;
  339. });
  340. function clickItem(thObj){
  341. var quItemBody=thObj.parents(".li_surveyQuItemBody");
  342. var quType=quItemBody.find(".quType").val();
  343. var dwQuInputLabel=thObj.find(".dwQuInputLabel");
  344. if("RADIO"===quType){
  345. quItemBody.find(".dwQuInputLabel").removeClass("checked");
  346. quItemBody.find("input[type='radio']").prop("checked",false);
  347. thObj.find("input[type='radio']").prop("checked",true);
  348. dwQuInputLabel.addClass("checked");
  349. quItemBody.find(".dwQuOptionItemContent").removeClass("active");
  350. thObj.addClass("active");
  351. runlogic(thObj.find("input[type='radio']"));
  352. }else if("CHECKBOX"===quType){
  353. var thCheckbox = thObj.find("input[type='checkbox']");
  354. if(thCheckbox.prop("checked")){
  355. thObj.find("input[type='checkbox']").prop("checked",false);
  356. dwQuInputLabel.removeClass("checked");
  357. thObj.removeClass("active");
  358. }else{
  359. thObj.find("input[type='checkbox']").prop("checked",true);
  360. dwQuInputLabel.addClass("checked");
  361. thObj.addClass("active");
  362. }
  363. var checkeds = quItemBody.find("input[type='checkbox']:checked");
  364. var paramInt02 = quItemBody.find(".paramInt02").val();
  365. if(paramInt02>0){
  366. if(checkeds[0]&&checkeds.size()>paramInt02){
  367. dwQuInputLabel.removeClass("checked");
  368. thObj.find("input[type='checkbox']").prop("checked",false);
  369. thObj.removeClass("active");
  370. alert("最多只支持选择"+paramInt02+"项内容!");
  371. return false;
  372. }
  373. }
  374. runlogic(thObj.find("input[type='checkbox']"));
  375. }else if("MULTIFILLBLANK"===quType){
  376. var chenRow=thObj.parents(".mFillblankTableTr");
  377. chenRow.find(".dwQuInputLabel").removeClass("checked");
  378. chenRow.find("input[type='radio']").prop("checked",false);
  379. thObj.find("input[type='radio']").prop("checked",true);
  380. dwQuInputLabel.addClass("checked");
  381. }else if("SCALE"===quType){
  382. //单选题
  383. quItemBody.find(".inputchecked").removeClass("inputchecked");
  384. quItemBody.find("input[type='radio']").prop("checked",false);
  385. thObj.find("input[type='radio']").prop("checked",true);
  386. thObj.addClass("inputchecked");
  387. runlogic(thObj.find("input[type='radio']"));
  388. }
  389. }
  390. $(".radioSelect").change(function(){
  391. if(focusFbk!=null){
  392. focusFbk.blur();
  393. }
  394. var thVal = $(this).val();
  395. var thName = $(this).attr("name");
  396. var quCoItemUlLi = $(this).parents("li.quCoItemUlLi");
  397. var quItemInputCase= quCoItemUlLi.find(".quItemInputCase[itemid='"+thVal+"']");
  398. var isNote = quItemInputCase.find(".isNote").val();
  399. if(isNote=="1"){
  400. quCoItemUlLi.find(".dwQuOptionItemNote").hide();
  401. var dwQuOptionItemNote = quCoItemUlLi.find(".dwQuOptionItemNote[name='text_"+thName+"_"+thVal+"']");
  402. dwQuOptionItemNote.show();
  403. }else{
  404. quCoItemUlLi.find(".dwQuOptionItemNote").hide();
  405. }
  406. var thObj = $(this);
  407. var quItemBody = $(this).parents(".li_surveyQuItemBody");
  408. runlogic(thObj);
  409. answerProgressbar(thObj);
  410. validateCheck(quItemBody,false);
  411. return false;
  412. });
  413. $(".fillblankInput,.dwMFillblankInput").focus(function(){
  414. focusFbk = $(this);
  415. return false;
  416. });
  417. //填空题
  418. $(".fillblankInput,.dwMFillblankInput").blur(function(){
  419. //$(this).css("borderColor","#D6D6FF");
  420. runlogic($(this));
  421. answerProgressbar($(this));
  422. // validateCheck($(this).parents(".li_surveyQuItemBody"),true);
  423. var thVal=$(this).val();
  424. if(!$(this).hasClass("dateSelector") || thVal!=""){
  425. validateCheck($(this).parents(".li_surveyQuItemBody"),true);
  426. }
  427. focusFbk = null;
  428. });
  429. function resetQuNum(){
  430. var quTitleNums=$(".quTitleNum");
  431. $.each(quTitleNums,function(i,item){
  432. $(this).text((i+1)+"、")
  433. });
  434. }
  435. // resetQuNum();
  436. resetQuNumLogic();
  437. function resetQuNumLogic(){
  438. var surveyQuItemBodys = $(".li_surveyQuItemBody");
  439. var quIndex = 1;
  440. $.each(surveyQuItemBodys,function(i,item){
  441. var thClass = $(this).attr("class");
  442. // var quCoNum = $(this).find(".quCoNum");
  443. var quCoNum = $(this).find(".quTitleNum");
  444. // console.debug(thClass+":"+thClass.indexOf("hidFor"));
  445. if(thClass.indexOf("hidFor")<0 && quCoNum[0]){
  446. quCoNum.html((quIndex++)+"、");
  447. }
  448. });
  449. }
  450. //处理标题因有p标签影响题目序号换行的问题
  451. var quTitleNums=$(".quTitleNum");
  452. $.each(quTitleNums,function(){
  453. var nextObj=$(this).next();
  454. if(nextObj[0]){
  455. var childrens=nextObj.children();
  456. if(childrens[0]){
  457. var firstChildren=childrens.first();
  458. if(firstChildren.is("p")){
  459. $(this).prependTo(firstChildren);
  460. }
  461. }
  462. }
  463. });
  464. /******************************处理题目逻辑设置 **************************************/
  465. //处理题目逻辑设置
  466. /** 答题触发事件 **/
  467. //初始化 处理默认逻辑跳转为显示,则先隐藏元素
  468. var quLogics=$("#dwSurveyQuContent .quLogicItem");
  469. $.each(quLogics,function(){
  470. var loginItem=$(this);
  471. var cgQuItemId=loginItem.find(".cgQuItemId").val();
  472. var skQuId=loginItem.find(".skQuId").val();
  473. var logicId=loginItem.find(".logicId").val();
  474. var logicType=loginItem.find(".logicType").val();
  475. if(logicType==="2"){
  476. //逻辑类型为“显示”2 则初始化为隐藏
  477. var hidQuItemBody=$(".quId[value='"+skQuId+"']").parents(".li_surveyQuItemBody");
  478. hidQuItemBody.hide();
  479. hidQuItemBody.addClass("hidFor"+logicId);
  480. hidQuItemBody.find(".answerTag").attr("disabled",true);
  481. }
  482. });
  483. function runlogic(thFormElementObj){
  484. var quItemBody=thFormElementObj.parents(".li_surveyQuItemBody");
  485. var quLogicItems=quItemBody.find(".quLogicItem");
  486. if(quLogicItems[0]){
  487. var quInputCase=quItemBody.find(".quInputCase");
  488. var quId=quInputCase.find(".quId").val();
  489. var quType=quInputCase.find(".quType").val();
  490. if(quType==="RADIO" || quType==="CHECKBOX"){
  491. var quLgoicItem=null;
  492. var quOptionItems=quItemBody.find(".dwQuOptionItemContent");
  493. if(quType==="RADIO"){
  494. if(quItemBody.find("select")[0]){
  495. quOptionItems=quItemBody.find("select option");
  496. }
  497. }
  498. $.each(quLogicItems,function(){
  499. var loginItem=$(this);
  500. var cgQuItemId=loginItem.find(".cgQuItemId").val();
  501. var skQuId=loginItem.find(".skQuId").val();
  502. var logicId=loginItem.find(".logicId").val();
  503. var logicType=loginItem.find(".logicType").val();
  504. //过滤优先级
  505. var isbreak=false;
  506. $.each(quOptionItems,function(){
  507. var quCoItem=$(this);
  508. var quInput=null;
  509. var logicStatus=false;
  510. var curQuItemId=null;
  511. if(quType==="RADIO"){
  512. if(quItemBody.find("select")[0]){
  513. curQuItemId=$(this).val();
  514. logicStatus=quItemBody.find("select").val()==curQuItemId;
  515. }else{
  516. quInput=quCoItem.find("input[type='radio']");
  517. logicStatus=quInput.prop("checked");
  518. curQuItemId=quInput.val();
  519. }
  520. }else if(quType==="CHECKBOX"){
  521. quInput=quCoItem.find("input[type='checkbox']");
  522. logicStatus=quInput.prop("checked");
  523. curQuItemId=quInput.val();
  524. }
  525. if(curQuItemId===cgQuItemId){
  526. if(logicType==="1"){
  527. if(logicStatus){
  528. skQuestion(quItemBody.next(),skQuId,logicId,function(){
  529. //重新编题号
  530. });
  531. if(skQuId==="1" || skQuId==="2" ){
  532. isbreak=true;
  533. }
  534. }else{
  535. var hidQuItemBodys=$(".hidFor"+logicId);
  536. $(".hidFor"+logicId).removeClass("hidFor"+logicId);
  537. var curPageNo = quItemBody.find(".pageNo").val();
  538. $.each(hidQuItemBodys,function(){
  539. var thQuItemBodyClass=$(this).attr("class");
  540. var thPageNo = $(this).find(".pageNo").val();
  541. if(thQuItemBodyClass.indexOf("hidFor")<0 && thPageNo==curPageNo){
  542. $(this).show();
  543. //$(".hidFor"+loginId).fadeIn();
  544. //回答标记与逻辑设置没有关系
  545. $(this).find(".answerTag").attr("disabled",false);
  546. }
  547. });
  548. }
  549. }else{
  550. if(logicStatus){
  551. var hidQuItemBodys=$(".hidFor"+logicId);
  552. $(".hidFor"+logicId).removeClass("hidFor"+logicId);
  553. var curPageNo = quItemBody.find(".pageNo").val();
  554. $.each(hidQuItemBodys,function(){
  555. var hidQuItemBody = $(this);
  556. var hidQuId = $(this).find(".quId").val();
  557. if(quType=="CHECKBOX" || quType=="RADIO"){
  558. $.each(quLogicItems,function() {
  559. var thLoginItem = $(this);
  560. var thSkQuId = thLoginItem.find(".skQuId").val();
  561. var thLogicType = thLoginItem.find(".logicType").val();
  562. var thLogicId=thLoginItem.find(".logicId").val();
  563. var logicHidForClass = "hidFor"+thLogicId;
  564. // console.debug(logicHidForClass);
  565. if(thLogicType==="2" && thSkQuId===hidQuId){
  566. hidQuItemBody.removeClass(logicHidForClass);
  567. }
  568. });
  569. }
  570. var thQuItemBodyClass=$(this).attr("class");
  571. var thPageNo = $(this).find(".pageNo").val();
  572. if(thQuItemBodyClass.indexOf("hidFor")<0 && thPageNo==curPageNo){
  573. $(this).show();
  574. $(this).find(".answerTag").attr("disabled",false);
  575. }
  576. });
  577. }else{
  578. /* 隐藏题
  579. */
  580. var isHide = true;
  581. if(quType=="CHECKBOX" || quType=="RADIO"){
  582. //先判断有没有逻辑已经触发了
  583. $.each(quLogicItems,function() {
  584. var thLoginItem = $(this);
  585. var thCgQuItemId=thLoginItem.find(".cgQuItemId").val();
  586. var thSkQuId = thLoginItem.find(".skQuId").val();
  587. var thLogicType = thLoginItem.find(".logicType").val();
  588. var thLogicId=thLoginItem.find(".logicId").val();
  589. if( thLogicType==="2" && thSkQuId === skQuId ){
  590. var thCgQuOptionItem=quItemBody.find(".dwQuOptionItemContent input[type='checkbox'][value='"+thCgQuItemId+"'],.dwQuOptionItemContent input[type='radio'][value='"+thCgQuItemId+"']");
  591. var thCgQuOptionStatus=thCgQuOptionItem.prop("checked");
  592. if(thCgQuOptionStatus){
  593. isHide = false;
  594. return false;
  595. }
  596. }
  597. });
  598. }
  599. if(isHide){
  600. var hidQuItemBody=$(".quId[value='"+skQuId+"']").parents(".li_surveyQuItemBody");
  601. hidQuItemBody.hide();
  602. hidQuItemBody.addClass("hidFor"+logicId);
  603. hidQuItemBody.find(".answerTag").attr("disabled",true);
  604. }
  605. }
  606. }
  607. return false;
  608. }
  609. });
  610. if(isbreak){
  611. return false;
  612. }
  613. });
  614. }else if(quType==="FILLBLANK"){
  615. //遍历每个逻辑设置
  616. var quOptionItems=quItemBody.find(".dwQuOptionItemContent");
  617. var thVal=thFormElementObj.val();
  618. $.each(quLogicItems,function(){
  619. var loginItem=$(this);
  620. var cgQuItemId=loginItem.find(".cgQuItemId").val();
  621. var skQuId=loginItem.find(".skQuId").val();
  622. var logicId=loginItem.find(".logicId").val();
  623. var logicType=loginItem.find(".logicType").val();
  624. if(logicType==="1"){
  625. //跳转
  626. if(thVal!=""){
  627. //逻辑选项被选中状态,激活状态
  628. skQuestion(quItemBody.next(),skQuId,logicId,function(){
  629. //重新编题号
  630. });
  631. if(skQuId==="1" || skQuId==="2" ){
  632. isbreak=true;
  633. }
  634. }else{
  635. //逻辑选项未被选中状态,未激活
  636. //$(".hidFor"+loginId).slideDown("slow");
  637. var hidQuItemBodys=$(".hidFor"+logicId);
  638. $(".hidFor"+logicId).removeClass("hidFor"+logicId);
  639. var curPageNo = quItemBody.find(".pageNo").val();
  640. $.each(hidQuItemBodys,function(){
  641. var thQuItemBodyClass=$(this).attr("class");
  642. var thPageNo = $(this).find(".pageNo").val();
  643. if(thQuItemBodyClass.indexOf("hidFor")<0 && thPageNo==curPageNo){
  644. $(this).show();
  645. //$(".hidFor"+loginId).fadeIn();
  646. //回答标记与逻辑设置没有关系
  647. $(this).find(".answerTag").attr("disabled",false);
  648. }
  649. });
  650. }
  651. }else{
  652. //显示
  653. //逻辑类型为“显示” quType=1
  654. if(thVal!=""){
  655. //逻辑选项被选中状态,激活状态 显示题
  656. var hidQuItemBodys=$(".hidFor"+logicId);
  657. $(".hidFor"+logicId).removeClass("hidFor"+logicId);
  658. var curPageNo = quItemBody.find(".pageNo").val();
  659. $.each(hidQuItemBodys,function(){
  660. var thQuItemBodyClass=$(this).attr("class");
  661. var thPageNo = $(this).find(".pageNo").val();
  662. if(thQuItemBodyClass.indexOf("hidFor")<0 && thPageNo==curPageNo){
  663. $(this).show();
  664. $(this).find(".answerTag").attr("disabled",false);
  665. }
  666. });
  667. }else{
  668. /* 隐藏题
  669. */
  670. var hidQuItemBody=$(".quId[value='"+skQuId+"']").parents(".li_surveyQuItemBody");
  671. hidQuItemBody.hide();
  672. hidQuItemBody.addClass("hidFor"+logicId);
  673. hidQuItemBody.find(".answerTag").attr("disabled",true);
  674. }
  675. }
  676. });
  677. }
  678. resetQuNumLogic();
  679. }
  680. }
  681. resetQuNumLogic();
  682. function skQuestion(nextQuItemBody,skQuId,logicId,callback){
  683. if(nextQuItemBody[0]){
  684. //submitSurveyBtn
  685. var nextQuType=nextQuItemBody.find(".quType").val();
  686. var nextQuId=nextQuItemBody.find(".quId").val();
  687. var nextAnswerTag=nextQuItemBody.find(".answerTag");
  688. //如果是新一页则显示当前页所有题
  689. if(nextQuType=="PAGETAG"){
  690. if(validateForms()) {
  691. nextQuItemBody.find(".nextPage_a").click();
  692. }
  693. }
  694. //var quType=quItemBody.find(".quType").val();
  695. //var quId=quItemBody.find(".quId").val();
  696. //判断跳转类型
  697. if(skQuId==null){
  698. //对于逻辑选项未被选中的情况
  699. }else if(nextQuType=="PAGETAG" ){
  700. skQuestion(nextQuItemBody.next(),skQuId,logicId,function(){
  701. });
  702. }else if(nextQuType!="submitSurveyBtn" && nextQuType!="PAGETAG" && (skQuId==="1" || skQuId==="2" || nextQuId!=skQuId) ){
  703. //对于逻辑项是被选定的情况下
  704. nextAnswerTag.attr("disabled",true);
  705. //nextQuItemBody.slideUp("slow");
  706. nextQuItemBody.hide();
  707. //nextQuItemBody.fadeOut();
  708. nextQuItemBody.addClass("hidFor"+logicId);
  709. skQuestion(nextQuItemBody.next(),skQuId,logicId,function(){
  710. });
  711. }
  712. /*
  713. else if(nextQuItemBody.is(":hidden")){
  714. skQuestion(nextQuItemBody.next(),skQuId,logicId,function(){
  715. });
  716. }else if(nextQuType!="submitSurveyBtn" && nextQuType!="PAGETAG" && (skQuId==="1" || skQuId==="2" || nextQuId!=skQuId) ){
  717. //对于逻辑项是被选定的情况下
  718. nextAnswerTag.attr("disabled",true);
  719. //nextQuItemBody.slideUp("slow");
  720. nextQuItemBody.hide();
  721. //nextQuItemBody.fadeOut();
  722. nextQuItemBody.addClass("hidFor"+logicId);
  723. skQuestion(nextQuItemBody.next(),skQuId,logicId,function(){
  724. });
  725. }
  726. */
  727. }else{
  728. callback();
  729. }
  730. }
  731. /*
  732. $("#dwSurveyQuContent .dwQuOptionItemContent").hover(function(){
  733. $(this).css({"border-color":"#1e94fc"});
  734. $(this).css({"background":"rgb(227, 237, 249)"});
  735. },function(){
  736. if(!($(this).hasClass("active") || $(this).hasClass("inputchecked"))){
  737. $(this).css({"border-color":"rgb(199, 225, 247)"});
  738. $(this).css({"background":"rgb(255, 255, 255)"});
  739. }
  740. });
  741. */
  742. bindDateEvent();
  743. });
  744. /**********************处理答题进度条************************/
  745. //$("#resultProgress").progressbar({value: bfbFloat});
  746. function answerProgressbar(thObj){
  747. var quItemBody=thObj.parents(".li_surveyQuItemBody ");
  748. var quType=quItemBody.find(".quType").val();
  749. if(quType==="RADIO"){
  750. //quItemBody.find(".answerTag").val(1);
  751. var checks=quItemBody.find("input[type='radio']:checked");
  752. if(checks[0]){
  753. quItemBody.find(".answerTag").val(1);
  754. }else{
  755. quItemBody.find(".answerTag").val(0);
  756. }
  757. }else if(quType=="CHECKBOX"){
  758. var checks=quItemBody.find("input[type='checkbox']:checked");
  759. if(checks[0]){
  760. quItemBody.find(".answerTag").val(1);
  761. }else{
  762. quItemBody.find(".answerTag").val(0);
  763. }
  764. }else if(quType==="FILLBLANK"){
  765. var thVal=thObj.val();
  766. if(thVal!=""){
  767. quItemBody.find(".answerTag").val(1);
  768. }else{
  769. quItemBody.find(".answerTag").val(0);
  770. }
  771. }else if(quType==="ORDERQU"){
  772. //quOrderByLeftUl
  773. var orderByLabels=quItemBody.find(".quOrderByLeftUl label");
  774. if(!orderByLabels[0]){
  775. quItemBody.find(".answerTag").val(1);
  776. }else{
  777. quItemBody.find(".answerTag").val(0);
  778. }
  779. }else if( quType==="SCORE" ){
  780. var quScoreOptionTr=thObj.parents(".quScoreOptionTr");
  781. var scoreNumInput=quScoreOptionTr.find(".scoreNumInput");
  782. if(scoreNumInput.val()!=""){
  783. quScoreOptionTr.find(".answerTag").val(1);
  784. }else{
  785. quScoreOptionTr.find(".answerTag").val(0);
  786. }
  787. }else if(quType==="MULTIFILLBLANK"){
  788. var mFillblankTableTr=thObj.parents(".mFillblankTableTr");
  789. if(thObj.val()!=""){
  790. mFillblankTableTr.find(".answerTag").val(1);
  791. }else{
  792. mFillblankTableTr.find(".answerTag").val(0);
  793. }
  794. }
  795. var totalQuSize=$("#dwSurveyQuContent .answerTag:enabled").size();
  796. var answerTag1=$("#dwSurveyQuContent .answerTag[value='1']:enabled");
  797. var answerQuSize=0;
  798. if(answerTag1[0]){
  799. answerQuSize=answerTag1.size();
  800. }
  801. var newValue = parseInt(answerQuSize/totalQuSize*100);
  802. $("#resultProgressRoot .progress-label").text("完成度:"+newValue+"%");
  803. $("#resultProgress").progressbar("option", "value", newValue);
  804. }
  805. function validateCheck(quItemBody,isSubForm){
  806. if(quItemBody.is(":visible")){
  807. var quId=quItemBody.find(".quId").val();
  808. var quType=quItemBody.find(".quType").val();
  809. var isRequired=quItemBody.find(".isRequired").val();
  810. var validateStatus=false;
  811. var checkType = "";
  812. var errorMsg = null;
  813. if(isRequired==="0"){
  814. validateStatus = true;
  815. return true;
  816. }
  817. if(quType==="RADIO"){
  818. var hv = quItemBody.find(".hv").val();
  819. if(hv=="4"){
  820. var radioSelectVal = quItemBody.find("select.radioSelect").val();
  821. if(radioSelectVal!="" && radioSelectVal!="0"){
  822. var radioSelect = quItemBody.find(".radioSelect");
  823. var radioSelectVal = radioSelect.val();
  824. var radioSelectName = radioSelect.attr("name");
  825. var quCoItemUlLi = radioSelect.parents("li.quCoItemUlLi");
  826. var quItemInputCase= quCoItemUlLi.find(".quItemInputCase[itemid='"+radioSelectVal+"']");
  827. var isNote = quItemInputCase.find(".isNote").val();
  828. if(isNote=="1"){
  829. var curText = quCoItemUlLi.find(".dwQuOptionItemNote[name='text_"+radioSelectName+"_"+radioSelectVal+"']");
  830. var curTextValue = curText.val();
  831. var checkType = quItemInputCase.find(".checkType").val();
  832. var isRequiredFill = quItemInputCase.find(".isRequiredFill").val();
  833. if(isRequiredFill=="1" || curTextValue!="") {
  834. validateStatus = checkoutData(checkType, curText);
  835. }else{
  836. validateStatus = true;
  837. }
  838. }else{
  839. validateStatus = true;
  840. }
  841. }
  842. }else{
  843. validateStatus=quItemBody.find("input[type='radio']:checked")[0];
  844. if(validateStatus){
  845. var curRadio = quItemBody.find("input[type='radio']:checked");
  846. var curText = curRadio.parents(".dwQuOptionItemContent").find("input[type='text']:visible");
  847. if(curText[0]){
  848. var curTextValue = curText.val();
  849. checkType = curRadio.parents(".dwQuOptionItemContent").find(".checkType").val();
  850. var isRequiredFill = curRadio.parents(".dwQuOptionItemContent").find(".isRequiredFill").val();
  851. if(isRequiredFill!="1"){
  852. validateStatus = checkoutData(checkType, curTextValue);
  853. }
  854. }
  855. }
  856. }
  857. }else if(quType==="CHECKBOX"){
  858. validateStatus=quItemBody.find("input[type='checkbox']:checked")[0];
  859. var paramInt01 = quItemBody.find(".paramInt01").val();
  860. if(paramInt01>0){
  861. var checkeds = quItemBody.find("input[type='checkbox']:checked");
  862. if(checkeds[0]&&checkeds.size()<paramInt01){
  863. errorMsg = "请保证最少选择"+paramInt01+"项内容";
  864. validateStatus = false;
  865. }
  866. }
  867. if(validateStatus){
  868. // isNote checkType isRequiredFill
  869. var curCheckboxs = quItemBody.find("input[type='checkbox']:checked");
  870. $.each(curCheckboxs,function(){
  871. var curText = $(this).parents(".dwQuOptionItemContent").find("input[type='text']:visible");
  872. if(curText[0]){
  873. var curTextValue = curText.val();
  874. checkType = $(this).parents(".dwQuOptionItemContent").find(".checkType").val();
  875. var isRequiredFill = $(this).parents(".dwQuOptionItemContent").find(".isRequiredFill").val();
  876. if(isRequiredFill!="1"){
  877. validateStatus = checkoutData(checkType, curTextValue);
  878. }
  879. }
  880. if(!validateStatus){
  881. return false;
  882. }
  883. });
  884. }
  885. }else if(quType==="FILLBLANK"){
  886. var value = quItemBody.find(".fillblankInput").val();
  887. validateStatus = value!="";
  888. checkType = quItemBody.find(".checkType").val();
  889. if(validateStatus){
  890. validateStatus = checkoutData(checkType, value);
  891. }
  892. }else if(quType==="ORDERQU"){
  893. //quItemBody.find(".quOrderByLeftUl label");
  894. validateStatus=!quItemBody.find(".quOrderItemHidInput[value='']")[0];
  895. }else if(quType==="SCORE"){
  896. validateStatus=true;
  897. var quScoreOptionTrs=quItemBody.find(".quScoreOptionTr");
  898. $.each(quScoreOptionTrs,function(){
  899. var scoreNumInput=$(this).find(".scoreNumInput");
  900. if(scoreNumInput.val()===""){
  901. validateStatus=false;
  902. return false;
  903. }
  904. });
  905. }else if(quType==="MULTIFILLBLANK"){
  906. validateStatus=true;
  907. var quScoreOptionTrs=quItemBody.find(".mFillblankTableTr");
  908. var paramInt01 = 0;
  909. if(quItemBody.find(".paramInt01")[0]){
  910. paramInt01 = quItemBody.find(".paramInt01").val();
  911. }
  912. var anNum = 0;
  913. $.each(quScoreOptionTrs,function() {
  914. var scoreNumInput = $(this).find(".dwMFillblankInput");
  915. if (scoreNumInput.val() != "") {
  916. anNum++;
  917. }
  918. })
  919. if(validateStatus){
  920. if(paramInt01!=0){
  921. if(anNum<paramInt01){
  922. validateStatus=false;
  923. }
  924. }else{
  925. if(anNum<quScoreOptionTrs.size()){
  926. validateStatus=false;
  927. }
  928. }
  929. }
  930. }else if(quType === "UPLOADFILE"){
  931. validateStatus=quItemBody.find(".fileuploadSaveValue")[0];
  932. }else if(quType==="submitSurveyBtn" || quType==="PARAGRAPH" || quType==="PAGETAG"){
  933. return true;
  934. }
  935. }else{
  936. validateStatus=true;
  937. }
  938. if(validateStatus){
  939. quItemBody.find(".errorItem").remove();
  940. }else{
  941. /*if(isSubForm && !quItemBody.find(".errorItem")[0]){
  942. var errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">请检查题目答案,为必答项!</label></div>";
  943. quItemBody.find(".surveyQuItemContent").append(errorHtml);
  944. }*/
  945. if(isSubForm){
  946. if(quItemBody.find(".errorItem")[0]){
  947. quItemBody.find(".errorItem").remove();
  948. }
  949. var errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">请检查题目答案,为必答项!</label></div>";
  950. if(errorMsg!=null){
  951. errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">"+errorMsg+"</label></div>";
  952. }else{
  953. if(checkType=="EMAIL"){
  954. errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">请输入Email,为必答项!</label></div>";
  955. }else if(checkType=="UNSTRCN"){
  956. errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">请输入非中文字符,为必答项!</label></div>";
  957. }else if(checkType=="STRCN"){
  958. errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">请输入中文字符,为必答项!</label></div>";
  959. }else if(checkType=="NUM"){
  960. errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">请输入数字,为必答项!</label></div>";
  961. }else if(checkType == "DIGITS"){
  962. errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">请输入整数,为必答项!</label></div>";
  963. }else if(checkType == "TELENUM"){
  964. errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">请输入电话,为必答项!</label></div>";
  965. }else if(checkType == "PHONENUM"){
  966. errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">请输入手机,为必答项!</label></div>";
  967. }else if(checkType == "TELE_PHONE_NUM"){
  968. errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">请输入电话或手机,为必答项!</label></div>";
  969. }else if(checkType == "DATE"){
  970. //2014-01-01 12:00:00
  971. errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">请输入日期时间类型,为必答项!</label></div>";
  972. }else if(checkType == "IDENTCODE"){
  973. errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">请输入身份证号,为必答项!</label></div>";
  974. }else if(checkType == "ZIPCODE"){
  975. errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">请输入邮编,为必答项!</label></div>";
  976. }else if(checkType == "URL"){
  977. errorHtml="<div class=\"errorItem\"><label for=\"\" class=\"error\">请输入URL,为必答项!</label></div>";
  978. }
  979. }
  980. quItemBody.find(".surveyQuItemContent").append(errorHtml);
  981. }
  982. }
  983. return validateStatus;
  984. }
  985. }
  986. function refreshAutoCode(codeImgId){
  987. var ctx = $("#ctx").val();
  988. $("#"+codeImgId).attr("src",ctx+"/jcaptcha.action");
  989. }