JS 操作 radio input(cc問卷管理)

1、選中特定的單選按鈕

function showDetail(content){$("input[name^='radio']").removeAttr("checked");for(var i=0;i<content.length;i++){$("#radio"+(i+1)+content.substr(i,1)).attr("checked","checked");}
}

2、手動添加問卷

javascript部分代碼

  1                 $('.handleSaveBtn').click(function(){
  2                     //判空,標題、有效期、題干、選項、分值
  3                     if ($("#title1").val() === '') {
  4                         alert("問卷標題不可為空");
  5                         return;
  6                     }
  7                     if ($("#timeOut1").val() === '') {
  8                         alert("問卷有效期不可為空");
  9                         return;
 10                     }
 11                     var flag=0;
 12                     $("input[name^='q']").each(function(){
 13                         if($(this).val()===""){
 14                             alert("題干、選項、分值等不可為空!");
 15                             flag=1;
 16                             return false;
 17                         }
 18                     });
 19                     if(flag===1){
 20                         return;
 21                     }
 22                     //組成問卷questions部分
 23                     var obj=new Object();
 24                     var questions=new Array();
 25                     var totalScore=0,score1,score2,score3,score4;
 26                     for(var i=0;i<10;i++){
 27                         var j=i+1;
 28                         var question=new Object();
 29                         var type=$("#type"+j).val();
 30                         question.type=type;
 31                         question.ordinal=j;
 32                         question.content=$("input[name='q"+j+"']").val();
 33                         if(type==='SINGLE'){
 34                             var choice1={"value":"A","content":$('input[name="q'+j+'c1"]').val(),"score":$('input[name="q'+j+'cm1"]').val()};
 35                             var choice2={"value":"B","content":$('input[name="q'+j+'c2"]').val(),"score":$('input[name="q'+j+'cm2"]').val()};
 36                             var choice3={"value":"C","content":$('input[name="q'+j+'c3"]').val(),"score":$('input[name="q'+j+'cm3"]').val()};
 37                             var choice4={"value":"D","content":$('input[name="q'+j+'c4"]').val(),"score":$('input[name="q'+j+'cm4"]').val()};
 38                             question.choices=[choice1,choice2,choice3,choice4];
 39                             
 40                             score1=$('input[name="q'+j+'cm1"]').val();
 41                             score2=$('input[name="q'+j+'cm2"]').val();
 42                             score3=$('input[name="q'+j+'cm3"]').val();
 43                             score4=$('input[name="q'+j+'cm4"]').val();
 44                             if(score1<score2){
 45                                 score1=score2;
 46                             }
 47                             if(score3<score4){
 48                                 score1=score2;
 49                             }
 50                             if(score1<score3){
 51                                 score1=score3;
 52                             }
 53                         }else if(type==='MULTIPLE'){
 54                             var choice1={"value":"A","content":"是","score":$('input[name="q'+j+'cm1"]').val()};
 55                             var choice2={"value":"B","content":"否","score":$('input[name="q'+j+'cm2"]').val()};
 56                             question.choices=[choice1,choice2];
 57                             
 58                             score1=$('input[name="q'+j+'cm1"]').val();
 59                             score2=$('input[name="q'+j+'cm2"]').val();
 60                             if(score1<score2){
 61                                 score1=score2;
 62                             }
 63                         }else{
 64                             var choice1={"value":"A","content":$('input[name="q'+j+'c1"]').val(),"score":$('input[name="q'+j+'cm1"]').val()};
 65                             question.choices=[choice1];
 66                             score1=$('input[name="q'+j+'cm1"]').val();
 67                         }
 68                         totalScore+score1;
 69                         questions.push(question);
 70                     }
 71                     if(totalScore>100){
 72                         alert("總分不能超過100!");
 73                         return;
 74                     }
 75                     obj.questions=questions;
 76                     var json=JSON.stringify(obj);
 77                     
 78                     var formData = new FormData();
 79                     formData.append("title",$("#title1").val());
 80                     formData.append("status",$("#status1").val());
 81                     formData.append("timeOut",$("#timeOut1").val());
 82                     formData.append("questions",json);
 83                     alert(json);
 84                     
 85                     //提交
 86                     var url = 'cms/survey/add2';
 87                     $.ajax({
 88                         url: url,
 89                         data: formData,
 90                         processData: false,
 91                         contentType: false,
 92                         type: 'POST',
 93                         success: function (job) {
 94                             console.log(job);
 95                             if (job) {
 96                                 alert("問卷添加成功!");
 97                                 location.reload();
 98                             } else {
 99                                 alert('問卷添加失敗');
100                             }
101                         }
102                     }).fail(function () {
103                         alert('問卷添加失敗');
104                     });
105                     
106                     
107                 });
108             </script>
View Code
 其中第76行代碼var json=JSON.stringify(obj);是將js對象轉換為JSON對象。

java部分代碼

 1     /**
 2      * 手動添加問卷
 3      * 
 4      * @param req
 5      * @param title
 6      * @param ownerId
 7      * @param ownerRealm
 8      * @param type
 9      * @param questions
10      * @param timeOut
11      * @return 
12      */
13     @POST
14     @Path("/add2")
15     @Consumes(MediaType.MULTIPART_FORM_DATA)
16     public Response addSurvey2(@Context HttpServletRequest req,
17                               @FormDataParam("title") String title,
18                               @FormDataParam("ownerId") String ownerId,
19                               @FormDataParam("realm") @DefaultValue("LOAN_PRODUCT") Realm ownerRealm,
20                               @FormDataParam("type") @DefaultValue("SIMPLE_RISK") SurveyType type,
21                               @FormDataParam("questions") String questions,
22                               @FormDataParam("timeOut") int timeOut) {
23         Gson gson = new Gson();
24         Survey survey = gson.fromJson(questions,Survey.class);
25         
26         RealmEntity owner = StringUtils.isBlank(ownerId)
27                             ? RealmEntity.of(Realm.CLIENT, appBean.getClientCode())
28                             : RealmEntity.of(ownerRealm, ownerId);
29         RealmEntity creator = RealmEntity.of(Realm.EMPLOYEE, ContextUtils.getCurrentEmployee(req).getEmployeeId());
30 
31         survey.setTitle(title);
32         survey.setOwner(owner);
33         survey.setType(type);
34         survey.setStatus(SurveyStatus.CREATED);
35         survey.setCreator(creator);
36         survey.setTimeCreated(new Date());
37         survey.setTimeout(timeOut);
38         surveyManagementService.createSurvey(appBean.getClientCode(), survey);
39         return redirect("/cms/survey");
40     }
View Code
其中Gson gson = new Gson();Survey survey = gson.fromJson(questions,Survey.class);是將字符串questions轉換為survey對象的quesionts字段。
Survey類中的問題屬性定義為private List<Question> questions = new ArrayList<>();

轉載于:https://www.cnblogs.com/sunflower627/p/4566644.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/374960.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/374960.shtml
英文地址,請注明出處:http://en.pswp.cn/news/374960.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

國內外著名黑客雜志

國外黑客雜志&#xff1a; 《phrack》黑客雜志 http://www.phrack.org 《phrack》創刊于80年代&#xff0c;是世界級的頂級黑客雜志&#xff0c;每年只有一期&#xff0c;現已出了65期&#xff0c;國人似乎至今只有三人在上面發表發表文章&#xff0c;三人好像都是綠盟的人&…

團體項目隨筆

我們的團體項目不僅在在課堂上討論了很久&#xff0c;課后也是幾經討論。每個人都有不同的想法我特別想做一個基于Web編寫的驢客網&#xff0c;因為基于個人需求&#xff0c;在最終的討論中被斃掉。 我們組最終的的討論結果是寫個游戲&#xff0c;關于游戲的發展&#xff0c;這…

Apache Lucene拼寫檢查器的“您是不是要”功能

Google的“您是不是要”功能 在上一篇文章中對Lucene進行了介紹之后 &#xff0c;現在是時候提高它&#xff0c;創建一個更復雜的應用程序了。 您肯定最熟悉Google的“您是不是要”功能&#xff08;其他搜索引擎也支持此功能&#xff09;。 這是一個例子&#xff1a; Lucene …

Android-做個性化的進度條

1.案例效果圖 2.準備素材 progress1.png(78*78) progress2.png(78*78) 3.原理 采用一張圖片作為ProgressBar的背景圖片(一般采用顏色比較淺的)。另一張是進度條的圖片(一般采用顏色比較深的圖片)。進度在滾動時&#xff1a;進度圖片逐步顯示&#xff0c;背景圖片逐…

匯編小記16/3/27

最后更新2016-03-27 21:05:06 [address]與[bx] [address] 在debug中mov ax,[0] 等價于mov ax,ds:[0] [0]表示內存偏移地址 但是在masm匯編解釋器中&#xff0c;mov ax,[0] 等價于mov ax,0 [0]表示常量0 [bx] mov ax,[bx] 表示 bx存放的數據為一個偏移地址&#xff0c;段…

ConcurrentLinkedHashMap v 1.0.1發布

大家好&#xff0c;我們發布了并發LinkedHashMap實現的1.0.1版本。 在最新版本中&#xff0c;已進行了一些較小的修改&#xff0c;以在多個線程遍歷映射的元素時提高性能。 最新版本還引入了可插拔驅逐策略。 當然&#xff0c;您可以實現自定義逐出策略&#xff0c;也可以將它…

BOMbing The System

roy g bivFebruary 2011 [Back to index] [Comments (0)] What is a BOM? Why should we care? Great, can we do that? Okay, lets do it! Unicode in files Greets to friendly people (A-Z) What is a BOM? Its not the thing that explodes. Thats a BOMB. Heh. BO…

鳥哥的linux私房菜學習筆記 ---第7章-2

1,文件內容查閱的命令: cat ,tac nl,more, less,head,tail ,od 文件的查閱參數,顯示行號如何顯示行號 nl 中的所有參數都是關于如何顯示行號的 這里面less的功能更多,更靈活 :空格 下一頁 pageup上一頁 pagedown 下一頁 /string 字符串查詢 ?string 反向字符串查詢 man的命…

HDU - 4497 GCD and LCM

題意&#xff1a;給出三個數的gcd,lcm&#xff0c;求這三個數的全部的可能 思路 &#xff1a;設x,y,z的gcd為d&#xff0c;那么設xd*a&#xff0c;yd*b&#xff0c;zd*c。a&#xff0c;b。c肯定是互質的。那么lcmd*a*b*c,所以我們能夠得到a*b*clcm/gcdans,將ans分解因數后&…

Java Lambda語法替代

關于lambda-dev郵件列表的討論已經開始解決lambdas /函數文字的Java語言語法應該是什么樣的問題。 讓我們看一個稍微平凡的例子&#xff0c;然后嘗試弄清楚問題。 Perl的人有一個很好的例子&#xff0c;說明以某種功能性的方式使用函數引用–他們稱其為Schwartzian變換&#xf…

淺析SMC技術

今天讓我們來看Win32ASM里面的高級一點的技術——SMC&#xff08;當當當當……&#xff09;&#xff01;&#xff01;&#xff01;SMC是什么意思&#xff1f;它的英文名叫“Self Modifying Code”&#xff0c;顧名思義&#xff0c;就是“代碼自修改”&#xff08;&#xff1f;&…

JAVA基礎--程序是順序執行的

class Testa {public static void main(String[] args) {String aa"aaa";String bb"bbb"aa;aa"cccc";System.out.println(bb);} } 輸出的是 “bbbaaa class Testa {public static void main(String[] args) {String aa"aaa";String …

Spring MVC攔截器示例

我以為是時候看看Spring的MVC攔截器機制了&#xff0c;這種機制已經存在了很多年&#xff0c;并且是一個非常有用的工具。 Spring Interceptor會按照提示進行操作&#xff1a;在傳入的HTTP請求到達您的Spring MVC控制器類之前對其進行攔截&#xff0c;或者相反&#xff0c;在其…

Android 調用系統的分享[完美實現同一時候分享圖片和文字]

android 系統的分享功能 private void share(String content, Uri uri){Intent shareIntent new Intent(Intent.ACTION_SEND); if(uri!null){//uri 是圖片的地址shareIntent.putExtra(Intent.EXTRA_STREAM, uri);shareIntent.setType("image/*"); //當用戶選擇短信時…

團隊行為守則—如果你們由我來領導

&#xfeff;&#xfeff;如果你是在我領導的團隊里&#xff0c;有幾個額外的事情我要告訴你。我深信這些行為守則是一個高效團隊的潤滑劑&#xff0c;我并不只是要求別人這樣做&#xff0c;我自己也嚴格恪守。 只有三樣事&#xff1a; 問&#xff1a;如果你對任務不清楚&#…

做短,但做對!

編寫簡潔&#xff0c;優雅&#xff0c;清晰的代碼一直是開發人員的艱巨任務。 您的同事不僅會感謝您&#xff0c;而且您會驚訝地發現&#xff0c;不斷期待著重構解決方案以更少的代碼完成更多&#xff08;或至少相同&#xff09;的工作是多么令人興奮。 曾經有人說好的程序員是…

math

莫比烏斯反演&#xff1a; $F(n) \sum\limits_{d|n} {f(d)} \Leftrightarrow \sum\limits_{d|n} {\mu (d)F(\frac{n}{d})} $ 其中 ${\mu (d)}$為莫比烏斯函數: 若$d$等于0 , 則${\mu (d)}$1 若$d {p_1}{p_2}{p_3}...{p_k}$ , ${p_i}$為互異質數&#xff0c;則${\mu (d)}$${( …

(筆試題)二進制1的個數相同的距離最小數

題目&#xff1a; 輸入&#xff1a;整數A輸出&#xff1a;整數B條件&#xff1a;A和B的二進制1的個數相同&#xff0c;且A和B之間的距離|A-B|最小。思路&#xff1a; 題目沒有說明整數類型&#xff0c;這里認為是帶符號的整數&#xff0c;即區分正負數。 根據題意&#xff0c;A…

Java Swing –日期選擇器對話框

房子里有Swing開發人員嗎&#xff1f; 對于使用Swing的用戶來說&#xff0c;這是一個GUI組件&#xff0c;可能會對您的UI編碼工作有所幫助。 我們的JCG合作伙伴之一提供了日期選擇器小部件。 一探究竟&#xff1a; Java Swing –日期選擇器對話框以選擇日期 翻譯自: https://…

Casperjs中fill提交表單遇到的問題

1.if you access internet with proxy please add --ignore-ssl-errorstrue --ssl-protocolany 2.casper.then* and casper.wait* 都是異步執行的 他們的調用&#xff0c;都是按堆棧中的順序來執行&#xff1b;也就是說&#xff0c;其他同步執行的函數&#xff0c;…