2016-05-20 49 views
1

我在客戶端系統(版本11.0.9600.18161)上的IE11和Chrome(版本50.0.2661.102 m)上使用jquery tablesorter,表格不會通過單擊標題進行排序在IE瀏覽器查看控制檯後,我看到:IE11上的jquery tablesorter未封閉標籤

HTML1509: Unmatched end tag. 

我已經看過了生成HTML,可以看到:

 <colgroup class="tablesorter-colgroup"> 
     <col style="width: 8.5%;"> 
     <col style="width: 9.8%;"> 
     <col style="width: 7.6%;"> 
     <col style="width: 6.8%;"> 
     <col style="width: 22%;"> 
     <col style="width: 8.6%;"> 
     <col style="width: 9.2%;"> 
     <col style="width: 12.9%;"> 
     <col style="width: 14.1%;"> 
     </colgroup> 

的來源是所有瀏覽器一樣,雖然這是在Firefox中也一樣,firefox不報告任何問題,一切正常,但這看起來不對,我爲什麼不這樣做有沒有關閉'col'標籤?

這是我的呼籲的tablesorter:

  $(objLocTable).tablesorter({theme:'blue' 
          ,showProcessing:true 
           ,widthFixed:false 
            ,widgets:['zebra' 
              ,'scroller'] 
           ,widgetOptions:{scroller_fixedColumns:2 
                ,scroller_height:400 
              ,scroller_upAfterSort:true 
              ,scroller_jumpToHeader:true}}) 
           .tablesorterPager({container:$('.pager')}); 

我在函數「sortNatural」找到了一個錯誤,如果A或B不是字符串的例行程序錯誤,但沒有錯誤處理所以排序沒有完成。

我不能告訴你,爲什麼a或b不會是一個字符串,看着他們應該是的數據集,但單步調試顯示其中一個參數爲null,並且這個函數會關閉函數。

我已經用try/catch子句圍繞函數內容解決了這個問題。

回答

1

按照WHATWG HTML Living Standard &的HTML w3.org HTML5定義,<col>標籤具有沒有結束標記

text/html中的標記遺漏:沒有結束標記。

爲了解決這個問題,離開的tablesorter的widthFixed optionfalse(默認設置),並使用CSS設置列寬 - 目標類名的頭,或在CSS中使用nth-child

哦,你可以report this issue to IE

+0

我認爲這應該是選擇的答案。另外,如果確實存在問題,我會將錯誤報告給tablesorter的創建者:http://tablesorter.com/docs/。這是他的錯,如果它不工作在IE –

+0

widthFixed沒有設置,所以它會使用默認值。我現在把它設置爲假,但我仍然遇到同樣的問題。控制檯仍然報告未封閉的標籤,我已經檢查過HTML並且沒有其他未封閉的標籤。 colgroup和col標籤仍然存在。 – SPlatten

+0

@JaredBeach LOL我維護一個[fork of tablesorter](http://mottie.github.io/tablesorter/docs/),這對tablesorter來說確實不成問題。 @SPlatten,看看[這個演示](http://jsfiddle.net/Mottie/r25tag6k/3/)沒有''被發現。 – Mottie