【问题标题】:Loading Ajax page losing styles加载 Ajax 页面丢失样式
【发布时间】:2012-09-05 12:11:44
【问题描述】:

我已经检查了有关 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> 之类的表标签,但是当我在 chrome 开发人员工具中查看网络选项卡的响应时,我确实看到了正在返回的表标签。

我再说一遍,当我在插入所有内容的主文件中使用相同的 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>

【问题讨论】:

  • 我没有看到&lt;table&gt; 元素?
  • &lt;table&gt; 元素已经在主页中,它已经插入到 &lt;table&gt;

标签: php jquery ajax styles


【解决方案1】:

在同事的帮助下得到了它。

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

    • 没有骰子。无论如何,我觉得应该有更好的解决方案,但我感谢您的帮助。
    猜你喜欢
    • 2023-01-13
    • 1970-01-01
    • 1970-01-01
    • 2012-09-21
    • 1970-01-01
    • 1970-01-01
    • 2019-11-07
    • 2012-03-01
    • 2015-11-07
    相关资源
    最近更新 更多