Kaynağa Gözat

修改打勾题未作答的处理

lujianhong 4 yıl önce
ebeveyn
işleme
ab2b31b06d
2 değiştirilmiş dosya ile 45 ekleme ve 5 silme
  1. 44 4
      EBook.Web/Common/tasklib_book.js
  2. 1 1
      EBook.Web/Test.html

+ 44 - 4
EBook.Web/Common/tasklib_book.js

@@ -1198,14 +1198,33 @@ function getAllAnswer() {
     $(".answer-body").children(".answer-audio-range").children("span").unbind("click");//取消点击绑定事件
     //打勾题的还原
     $.each($(".checkbox"), function (num, item) {
+        var isanswer = false;
         var answerid = $(item).attr("answer-id");
         var parentid = $(item).attr("parent-anid");
+        //遍历同一小题的作答,如果作答了,整个小题都认为是作答了
+        $.each($(".checkbox[parent-anid=" + parentid + "]"), function (n, item) {
+            var atext = $(item).attr("answer-text");
+            if (atext != "" && atext != "未作答") {
+                isanswer = true;
+            }
+        });
         //提交直接还原作答现场
         var mytext = $(item).attr("answer-text");//我的答案
         var ischecked = mytext.indexOf("√") > -1;
         var answerText = $(item).attr("answer-anstext");//参考答案
-        mytext = mytext == "" ? "   " : mytext;
-        $(item).prop("outerHTML", "<div class='answer-body' answer-id='" + answerid + "' parent-anid='" + parentid + "' answer-anstext='" + answerText + "' answer-isky='2'><div class='answer-audio-range'><img src='" + PicInfo.recordPlayImgUrl + "'/><span class='answer-audio-text'>作答音频</span></div><div class='answer-point-range' style='display:none;'><img src='" + PicInfo.answerPointImgUrl + "'/><span class='answer-point-text'>答题点</span></div><buttom class='answer-text' style='display:block;'>" + mytext + "</buttom></div>");
+        if (mytext == "") {
+            mytext = "未作答";
+            if (isanswer) {
+                mytext = "&nbsp;&nbsp;&nbsp;&nbsp;";
+            }
+        }
+        //mytext = mytext == "" ? "&nbsp;&nbsp;&nbsp;" : mytext;
+        if (!isanswer) {
+            $(item).prop("outerHTML", "<div class='answer-body' answer-id='" + answerid + "' parent-anid='" + parentid + "' answer-anstext='" + answerText + "' answer-isky='2'><div class='answer-audio-range'><img src='" + PicInfo.recordPlayImgUrl + "'/><span class='answer-audio-text'>作答音频</span></div><div class='answer-point-range' style='display:none;'><img src='" + PicInfo.answerPointImgUrl + "'/><span class='answer-point-text'>答题点</span></div><buttom class='answer-text no-answer' style='display:block;'>" + mytext + "</buttom></div>");
+        }
+        else {
+            $(item).prop("outerHTML", "<div class='answer-body' answer-id='" + answerid + "' parent-anid='" + parentid + "' answer-anstext='" + answerText + "' answer-isky='2'><div class='answer-audio-range'><img src='" + PicInfo.recordPlayImgUrl + "'/><span class='answer-audio-text'>作答音频</span></div><div class='answer-point-range' style='display:none;'><img src='" + PicInfo.answerPointImgUrl + "'/><span class='answer-point-text'>答题点</span></div><buttom class='answer-text' style='display:block;'>" + mytext + "</buttom></div>");
+        }
     });
     ControlFlag = false;
     //console.log(JSON.stringify(answerData));
@@ -1379,6 +1398,7 @@ function backupAllAnswer(answerJson, statusType) {
         $.each($(".checkbox"), function (num, item) {
             //可作答状态,作答还原
             var index = 0;
+            var isanswer = false;
             var answerid = $(item).attr("answer-id");
             var parentid = $(item).attr("parent-anid");
             for (var i = 0; i < answerList.length; i++) {
@@ -1387,6 +1407,15 @@ function backupAllAnswer(answerJson, statusType) {
                     break;
                 }
             }
+            //一题多空的作答关联查找
+            for (var i = 0; i < answerList.length; i++) {
+                if (parentid == answerList[i].pId) {
+                    if (answerList[i].Text != "") {
+                        isanswer = true;
+                        break;
+                    }
+                }
+            }
             //提交直接还原作答现场
             var mytext = answerList[index].Text;//我的答案
             var ischecked = mytext.indexOf("√") > -1;
@@ -1399,8 +1428,19 @@ function backupAllAnswer(answerJson, statusType) {
             }
             //已提交,已评阅,还原HTML代码,去除checkbox
             if (statusType == 1 || statusType == 2) {
-                mytext = mytext == "" ? "&nbsp;&nbsp;&nbsp;" : mytext;
-                $(item).prop("outerHTML", "<div class='answer-body' answer-id='" + answerid + "' parent-anid='" + parentid + "' answer-anstext='" + answerText + "' answer-isky='2' answer-text='" + mytext + "'><div class='answer-audio-range'><img src='" + PicInfo.recordPlayImgUrl + "'/><span class='answer-audio-text'>作答音频</span></div><div class='answer-point-range' style='display:none;'><img src='" + PicInfo.answerPointImgUrl + "'/><span class='answer-point-text'>答题点</span></div><buttom class='answer-text' style='display:block;'>" + mytext + "</buttom></div>");
+                if (mytext == "") {
+                    mytext = "未作答";
+                    if (isanswer) {
+                        mytext = "&nbsp;&nbsp;&nbsp;&nbsp;";
+                    }
+                }
+                //mytext = mytext == "" ? "&nbsp;&nbsp;&nbsp;" : mytext;
+                if (!isanswer) {
+                    $(item).prop("outerHTML", "<div class='answer-body' answer-id='" + answerid + "' parent-anid='" + parentid + "' answer-anstext='" + answerText + "' answer-isky='2' answer-text='" + mytext + "'><div class='answer-audio-range'><img src='" + PicInfo.recordPlayImgUrl + "'/><span class='answer-audio-text'>作答音频</span></div><div class='answer-point-range' style='display:none;'><img src='" + PicInfo.answerPointImgUrl + "'/><span class='answer-point-text'>答题点</span></div><buttom class='answer-text no-answer' style='display:block;'>" + mytext + "</buttom></div>");
+                }
+                else {
+                    $(item).prop("outerHTML", "<div class='answer-body' answer-id='" + answerid + "' parent-anid='" + parentid + "' answer-anstext='" + answerText + "' answer-isky='2' answer-text='" + mytext + "'><div class='answer-audio-range'><img src='" + PicInfo.recordPlayImgUrl + "'/><span class='answer-audio-text'>作答音频</span></div><div class='answer-point-range' style='display:none;'><img src='" + PicInfo.answerPointImgUrl + "'/><span class='answer-point-text'>答题点</span></div><buttom class='answer-text' style='display:block;'>" + mytext + "</buttom></div>");
+                }
             }
         });
         //点击事件重新绑定

+ 1 - 1
EBook.Web/Test.html

@@ -115,7 +115,7 @@
         });
         //回显习题答案
         $("#backup-answer").on("click", function () {
-            backupAllAnswer(answerjson, 0);
+            backupAllAnswer(answerjson, 1);
             //var answerJson = "{\"AudioLength\":3,\"AudioUrl\":\"http://172.16.41.241:10103/http_TBookEditor51/exerciseAnswerAudio/2020-11-06_09-31-19.wav\",\"Id\":\"18\",\"Text\":\"\",\"Type\":3}";
             //reviewAnswer(answerJson);
         });