2014-01-22 21 views
1

有人試過這個免費的過濾器發生器嗎?我真的不明白爲什麼這不起作用。 JS文件位於正確的目錄中。我完全按照這個例子,但是過濾器根本沒有顯示。任何線索?這裏是鏈接到工具http://tablefilter.free.fr/HTML表格過濾器發生器不工作

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head><script type="text/javascript" language="javascript" src="TableFilter/tablefilter.js"></script> 
    <script language="javascript" type="text/javascript">    
    var tf = setFilterGrid("table1"); 
    </script> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <title>Untitled Document</title> 
    </head> 

    <body> 



<table id="table1" cellspacing="0" class="mytable filterable" > 
    <caption>WORLD INTERNET USAGE AND POPULATION STATISTICS</caption> 
    <tr> 
     <th>World Regions</th> 
     <th>Population (2007 Est.)</th> 
     <th>Population % of World</th> 
     <th>% Population (Penetration)</th> 
     <th>Usage % of World</th> 
    </tr> 
    <tr> 
     <td>Africa</td> 
     <td>933,448,292</td> 
     <td>14.2 %</td> 
     <td>3.5 %</td> 
     <td>3.0 %</td> 
    </tr> 
    <tr> 
     <td>Asia</td> 
     <td>3,712,527,624</td> 
     <td>56.5 %</td> 
     <td>10.5 %</td> 
     <td>35.6 %</td> 
    </tr> 
    <tr> 
     <td>Europe</td> 
     <td>809,624,686</td> 
     <td>12.3 %</td> 
     <td>38.6 %</td> 
     <td>28.6 %</td> 
    </tr> 
    <tr> 
     <td>Middle East</td> 
     <td>193,452,727</td> 
     <td>2.9 %</td> 
     <td>10.0 %</td> 
     <td>1.8 %</td> 
    </tr> 
    <tr> 
     <td>North America</td> 
     <td>334,538,018</td> 
     <td>5.1 %</td> 
     <td>69.4 %</td> 
     <td>21.2 %</td> 
    </tr> 
    <tr> 
     <td>Latin America/Caribbean</td> 
     <td>556,606,627</td> 
     <td>8.5 %</td> 
     <td>16.0 %</td> 
     <td>8.1 %</td> 
    </tr> 
    <tr> 
     <td>Oceania/Australia</td> 
     <td>34,468,443</td> 
     <td>0.5 %</td> 
     <td>53.5 %</td> 
     <td>1.7 %</td> 
    </tr> 
</table> 
</body> 
</html> 
+0

將腳本標記移動到''上方,以便它讀取'' – Andy

+0

仍然一樣。只是表格出現了。沒有過濾器。 – user1033038

+0

它的作品!我不知道JS是如何放置的。它在網站上說,把它放在頭部。 – user1033038

回答

1

移動你的腳本標籤只是</body>上方,它讀取

<script language="javascript" type="text/javascript"> 
    var tf = setFilterGrid("table1"); 
    </script> 
</body> 

這是因爲DOM /頁面元素需要加載,這樣腳本有一些工作要做。

另一種方法是將<script>標籤保留在他們所在位置,但將onload聽衆放置在body處。如果你讀,你可能已經看到這樣的代碼:

<body onload="init()"> 

這是說,一旦<body>(和暗示,它包含的元素)加載功能init應該執行。所以,你可能有這樣的事情,而不是:

<script language="javascript" type="text/javascript"> 
    function init() { 
    var tf = setFilterGrid("table1"); 
    } 
</script> 

如果你使用jQuery,這是通過添加ready listener to document解決了不同的方法來檢查是否DOM已加載:

要麼...

jQuery(document).ready(function() { 
    // your code here 
}); 

...或它的快捷方式:

jQuery(function() { 
    // your code here 
}); 

希望有所幫助。

+0

非常明確的解釋。非常感謝。 – user1033038