来自jQuery .load()的HTML表格不会在Firefox中呈现

时间:2014-04-24 20:49:18

标签: jquery html ajax firefox html-table

我有一个HTML表,我想插入多个HTML页面。我已成功使用jQuery执行此操作,但在Firefox中除外。

这是一个HTML文件,我试图从另一个HTML文件中插入一个表(这只是一个简化的例子,而不是我正在使用的实际代码)。

<!doctype html>
<html>
<head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
    <meta content="IE=edge" http-equiv="X-UA-Compatible">

    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
    <script>
        $(document).ready(function() {
            $('#TableContainer').load('IpsumTable.htm');    
        });
    </script>
</head>
<body>
    <h2>Here is my table</h2>
    <div id="TableContainer"></div>
</body>
</html>

该页面旨在显示一个简单的标题,下面是表格。 IpsumTable.htm文件只包含一个简单的HTML表格,如下所示:

<table border="1">
    <tbody>
        <tr>
            <th>Number</th>
            <th>WrittenName</th>
            <th>CommaCount</th>
            <th>Syllables</th>
        </tr>
        <tr>
            <td>12</td>
            <td>Twelve</td>
            <td>0</td>
            <td>1</td>
        </tr>
        <tr>
            <td>2,254</td>
            <td>Two thousand two hundred fifty four</td>
            <td>1</td>
            <td>9</td>
        </tr>
        <tr>
            <td>1,000,000,000</td>
            <td>One billion</td>
            <td>3</td>
            <td>3</td>
        </tr>
        <tr>
            <td>17</td>
            <td>Seventeen</td>
            <td>0</td>
            <td>3</td>
        </tr>
    </tbody>
</table>

这适用于Chrome和IE,但在Firefox中,该表格未呈现。它只显示预呈现的HTML代码:
    ��<table border="1" style="width: 562px"> <tbody> <tr> <th align="left"> ......等等。

为什么会这样?表格代码前面的两个神秘问号图标(��)显示在页面上,这可能是一个线索,但我不知道它们的含义或它们的来源。

2 个答案:

答案 0 :(得分:0)

似乎firefox在打开.htm文件时遇到了一些麻烦。

我在mozillas支持论坛上发现了一个问题,也许其中一些答案可能对你有所帮助:) https://support.mozilla.org/en-US/questions/973637

使用.html文件似乎比.htm

更好

答案 1 :(得分:0)

几年前,有bug report描述了这个问题。它没有解决方案,但您可能想尝试更新版本的jQuery,而您还没有。

您是否尝试通过ajax()加载文件?会更长但可能有用。