2012-09-12 68 views
0

我已经检查了有关AJAX不加载样式的其他类似问题的答案。没有解决方案为我工作。加载Ajax页面丢失样式

内的AJAX调用,我加载另一个AJAX调用到的元素在页面上:

$.ajax({ 
     url: site_url+'/ajax/int_rooms' 
    }).done(function (data) { 
     $('.rooms-sides').append(data); 
    }); 

我也试过$('.rooms-sides').load(site_url+'/ajax/int_rooms');

当我把HTML,并把它手动进页面,它的风格和看起来如预期。 当我把它粘贴到AJAX(正在加载成功)时,它不再正确格式化。

控制台中没有错误。我使用Chrome(在Firefox中的结果相同)。 如果我'检查元素',似乎加载的文件是丢失表格标签,如<tr>,但是当我查看来自网络选项卡在chromes开发人员工具中的响应时,我确实看到了正在返回的表标记。

我重复一遍,当我在主文件中使用相同的html来插入所有内容时,它完美地工作。

这个HTML被放入一个输出的php变量中,这就是为什么你会看到$ r-> name的原因。 我试图把它只是在HTML中,而不是在PHP输出以及在文件中,它会产生完全相同的错误。

有问题的HTML:

<input type='hidden' id='room_name' value='$r->name'/> 
    <tr> 
    <td class="action"><a href="#" title="Delete"><span class="delete">Delete</span></td> 
    <td class="action"><a href="#" title="Duplicate"><span class="duplicate">Duplicate</span></td> 
    <td><a href="#" title="Configure">Configure</td> 
    <td> 

    <div class="ui-widget"> 
    <select id="combobox"> 
    <option value="">Select one...</option> 
    <option value="Kitchen">Kitchen</option> 
    <option value="Bedroom">Bedroom</option> 
    <option value="Living Room">Living Room</option> 
    <option value="Dining Room">Dining Room</option> 
    <option value="Hallway">Hallway</option> 
    </select> 
    </div> 

    </td> 
    <td>$364.14</td> 
    </tr> 
    <script type="text/javascript"> 
    $("#room_name").remove(); 
    </script> 
+0

我没有看到'

'元素? – dbf

+0

'

'元素已经在主页面,这已经被插入'
' –

回答

1

在同事的帮助下得到它。

必须移动隐藏的输入,这是破坏表格行。

0

尝试在/ajax/int_rooms文件应用样式。

+0

没有骰子。无论如何,我觉得应该有更好的解决方案,但我很感激帮助。 –