使用jquery的Ajax请求没有填充IE上的表

时间:2014-12-17 13:44:36

标签: javascript php jquery ajax internet-explorer-11

我正在转换旧的现有PHP代码以生成HTML并使用AJAX填充表格,用于分页和动态搜索。由于现有结构,我的PHP页面将响应表格(TR和TD)的所有HTML内容,而不仅仅是数据。

我使用jQuery API .html()插入data $('#myTable').empty().html(data),我尝试使用document.getElementById('myTable').innerHTML = data

我的问题是,只有在Internet Explorer上,才会填充表格。这两种方法都与我测试的每个浏览器完美匹配,但没有IE浏览器。我正在使用IE11。在测试结果时,我的页面返回了良好的结果,并且console.log(数据)很好。

我找到了一个可能不是答案的元素,但是当我的HTML内容出现在echo,table的填充作品上时,当我打破PHP编写适当的HTML时,它就不起作用了。即使结果完全相同,显然也是如此。

PHP中的两种方法:

工作

if(isset($_GET['ajax']) AND $_GET['ajax']=='displayContent')
{
    echo '<tr><td>COL1</td><td>COL2</td></tr>';
    exit;
}

无效

if(isset($_GET['ajax']) AND $_GET['ajax']=='displayContent')
{
    ?>
    <tr><td>COL1</td><td>COL2</td></tr>
    <?php
    exit;
}

jQuery代码:

$.ajax({
        url: "?p=operation&ajax=displayContent",
        data: generateGet(),
        type: 'GET',
        async: true
    }).done(function( data){
        $( "#myTable" ).empty().html(data);
        //document.getElementById('myTable').innerHTML = data;
    });

HTML

<table id="myTable" border="0" width="880" cellspacing="0">
    </table>

就我而言,ECHO或退出PHP标签的写法完全相同,我真的不知道如何解决我的问题。

我无法使用echo重写所有代码,实际上有很多行和代码。

0 个答案:

没有答案