浏览代码

上传表格兼容处理

namejr 4 年之前
父节点
当前提交
affb7316d5
共有 2 个文件被更改,包括 38 次插入3 次删除
  1. 37 3
      EBook.Web/Common/tasklib_book.js
  2. 1 0
      EBook.Web/EBook.Web.csproj

+ 37 - 3
EBook.Web/Common/tasklib_book.js

@@ -237,8 +237,22 @@ var AdjustTableFunc = function (sWidthVal) {
         var TableWidth = 0;
         var TableWidth = 0;
         var TotalMaxLen = 0;
         var TotalMaxLen = 0;
         var RuleFlag = true;
         var RuleFlag = true;
+        var HasIndex = 0;
+        RSArrs = [];
         $.each($(item).find("tr"), function (trIndex, trItem) {
         $.each($(item).find("tr"), function (trIndex, trItem) {
             $.each($(trItem).find("td"), function (tdIndex, tdItem) {
             $.each($(trItem).find("td"), function (tdIndex, tdItem) {
+                var RowSpanNum = parseInt($(tdItem).attr("rowspan"));
+                RowSpanNum = (RowSpanNum == 0 || isNaN(RowSpanNum)) ? 1 : RowSpanNum;
+                if (RowSpanNum > 1) {
+                    var RSArr = {
+                        RSIndex: HasIndex,
+                        RSNumber: RowSpanNum,
+                        RSXIndex: tdIndex,
+                        RSYIndex: trIndex
+                    };
+                    HasIndex += 1;
+                    RSArrs.push(RSArr);
+                }
                 var WidthVal = $(tdItem).css("width").replace("px", "");
                 var WidthVal = $(tdItem).css("width").replace("px", "");
                 var RemoveHtmlArr = removeHtmlFunc($(tdItem).html(), WidthVal);
                 var RemoveHtmlArr = removeHtmlFunc($(tdItem).html(), WidthVal);
                 // 附加处理图片宽度
                 // 附加处理图片宽度
@@ -262,11 +276,31 @@ var AdjustTableFunc = function (sWidthVal) {
                     }
                     }
                     ArrMaxLen.push(0);
                     ArrMaxLen.push(0);
                 }
                 }
-                if (ArrMaxLen[tdIndex] < tdWidthVal) {
-                    TotalMaxLen += tdWidthVal - ArrMaxLen[tdIndex];
-                    ArrMaxLen[tdIndex] = tdWidthVal;
+                if (RSArrs.length > 0) {
+                    for (var i = 0; i < RSArrs.length; i++) {
+                        if (RSArrs[i].RSNumber > 1 && RSArrs[i].RSYIndex == trIndex) {
+                            if (ArrMaxLen[tdIndex] < tdWidthVal) {
+                                TotalMaxLen += tdWidthVal - ArrMaxLen[tdIndex];
+                                ArrMaxLen[tdIndex] = tdWidthVal;
+                            }
+                        }
+                    }
+                }
+                else {
+                    if (ArrMaxLen[tdIndex] < tdWidthVal) {
+                        TotalMaxLen += tdWidthVal - ArrMaxLen[tdIndex];
+                        ArrMaxLen[tdIndex] = tdWidthVal;
+                    }
                 }
                 }
             });
             });
+            for (var i = 0; i < RSArrs.length; i++) {
+                if (RSArrs[i].RSNumber > 1) {
+                    RSArrs[i].RSNumber -= 1;
+                }
+                else {
+                    RSArrs.splice(i);
+                }
+            }
         });
         });
         // 判断表格是否只有一行
         // 判断表格是否只有一行
         if ($(item).find("tr").length == 1 && $(item).find("tr").eq(0).find("td").length == 1) {
         if ($(item).find("tr").length == 1 && $(item).find("tr").eq(0).find("td").length == 1) {

+ 1 - 0
EBook.Web/EBook.Web.csproj

@@ -64,6 +64,7 @@
   <ItemGroup>
   <ItemGroup>
     <Content Include="698.html" />
     <Content Include="698.html" />
     <Content Include="AnsText\2021129.txt" />
     <Content Include="AnsText\2021129.txt" />
+    <Content Include="AnsText\2021211115.txt" />
     <Content Include="AnsText\20578.txt" />
     <Content Include="AnsText\20578.txt" />
     <Content Include="AnsText\20799.txt" />
     <Content Include="AnsText\20799.txt" />
     <None Include="AnsText\21255.json" />
     <None Include="AnsText\21255.json" />