1

我有以下代码从 php 文档中检索一些文本:

$.get("server/test.php", function(data){
    $('#thumbdest').prepend(data);
    // $('#thumbdest').html(data);
});

注释行按预期返回所有内容,但prepend数据没有。插入时似乎会去除 HTML 标签。我不能使用注释行,因为我必须一个接一个地插入多个项目。按预期$('#thumbdest').html(data);替换 div 中的所有内容。thumbdest

下面是我在使用时应该得到的 HTMLprepend

<tr>
    <td>
        <a href="#modal" class="thumbnail tableimg"  role="button" class="btn" data-toggle="modal">           
            <img src="assets/img/huvudbilder/thumbs/img.png" class="tableimg" alt="">
        </a>
    </td>
    <td>Test1</td>
    <td>Test2</td>                
</tr>

这就是我真正从使用中得到的prepend

<a href="#modal" class="thumbnail tableimg"  role="button" class="btn" data-toggle="modal">
    <img src="assets/img/huvudbilder/thumbs/img.png" class="tableimg" alt="">
</a>
Test1
Test2

这反过来又搞砸了整张桌子。所有表格元素都消失了,这是为什么呢?

编辑:在alert(data)前置后进行测试时,我得到以下信息:

<tr>
    <td>
        <a href="#editImage_1222866094" class="thumbnail tableimg"  role="button" class="btn" data-toggle="modal">

            <img src="assets/img/huvudbilder/thumbs/favicon32.png" class="tableimg" alt="">
        </a>
    </td>
    <td>Test1</td>
    <td>Test2</td>                     
</tr>

的结构#thumbdest

        <table class="table table-hover">
          <p>&nbsp;</p>
            <thead>
                <tr>
                    <th></th>
                    <th>Namn</th>
                    <th>Tid</th>
                </tr>
            </thead>
            <tbody id="thumbdest"></tbody>
            <tbody>
                <?php getImageList($conn); ?>
            </tbody>
        </table>
4

1 回答 1

0
<!DOCTYPE HTML>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <title>Script Test</title>
    <script src="jquery.min.js"></script>
    <script>

    // example

        $(function() {
            $('.button').click(function(e) {
                e.preventDefault();
                var $mytext = "<a href=\"#\">Test</a>";
                    $("#key").prepend($mytext);

                });
        });

    </script>
</head>
<body>

    <a href="" class="button">Test</a>
    <div id="key"></div>

</body>
</html>

在这里,prepend()按预期工作,而不是剥离标签。

您需要做的是将<tbody>内部放置<div id="thumbdest">,然后将以下脚本行从更改$('#thumbdest').prepend(data);$('#thumbdest tbody').prepend(data);

来源:http: //forum.jquery.com/topic/prepend-stripping-out-html-table-tags

于 2012-11-14T08:38:12.993 回答