jquery追加不起作用但在另一个函数中工作

问题描述 投票:0回答:3

所以..我有2个jquery函数,可以将某些内容附加到表中。第一个功能不起作用,第二个功能有效吗?而在第一个函数中,我的HTML var填充了要附加的好信息,它只是不附加它?

function buildTable(data) {
   var html = "";
   $.each(data, function (key, value) {
       html += "<tr>";
       html += "<td><a class='delete'><i class='fa fa-thrash'></i></a></td>";
       html += "<td class='key'>" + key + "</td>";
       html += "<td class='val'>" + value + "</td>";
       html += "<td></td>";
       html += "</tr>";
       //$(".table > tbody").prepend(html);
       //$(".addrow").append(html);
       //$("#parameterTable > tbody").append(html);
   });
   $('.addrow').prepend(html);

   //$(".formTable ").prepend(html);

}

第二个功能(工作的功能)

function addNewParameter() {
   if(!added) {
       var html = "<tr>";
        html += "<td></td>";
        html += "<td><input type='text' class='parameter1' name='Parameter1'></td>";
        html += "<td><input type='text' class='parameter2' name='Parameter2'></td>";
        html += "<td><a class='save'><i class='fa fa-save'></i></a><a class='undoAdd'><i class='fa fa-undo'></i></a></td>";
        html += "</tr>";
        $(".addrow").append(html);
        added = true;
   } else {
       showWarning("u heeft al een parameter toegevoegd, sla deze eerst op.");

   }

}

我需要附加HTML的HTML

<table class="formTable table table-striped table-bordered table-hover dataTable" id="parameterTable">
    <thead>
        <tr>
            <td class="col-md-2"></td>
            <td class="col-md-4">
                Naam
            </td>
            <td class="col-md-4">
                Waarde
            </td>
            <td class="col-md-2"></td>
        </tr>
    </thead>
    <tbody class="addrow">

    </tbody>
</table>

我一直在努力解决这个问题,任何帮助都会很好

javascript jquery html ajax asp.net-ajax
3个回答
0
投票

你试过这样的吗?

function buildTable(data) {
       var html = "";
       $.each(data, function (key, value) {
           html += "<tr>";
           html += "<td><a class='delete'><i class='fa fa-thrash'></i></a></td>";
           html += "<td class='key'>" + key + "</td>";
           html += "<td class='val'>" + value + "</td>";
           html += "<td></td>";
           html += "</tr>";
       });
       $('.addrow').append(html);

    }

0
投票

正确使用jQuery不需要结束标记:

function addNewParameter() {
    if (!added) {
        var newHtml = $('<tr>');
        newHtml.append($('<td>'));
        newHtml.append(
            $('<td>').append(
                $('<input>'.addClass("parameter1").attr({"name":"Parameter1","type":"text"}))
                )
        );
        html.append(
            $('<td>').append(
                $('<input>').addClass("parameter2").attr({"name":"Parameter2","type":"text"})
            )
        );

        html.append(
            $('<td>').append(
                $('<a>').addClass('save').append(
                    $('<i>').addClass("fa fa-save")
                ),
                $('<a>').addClass('undoAdd').append(
                    $('<i>').addClass("fa fa-undo")
                    )
                )
            );
        $('.addrow').append(newHtml);
        added=true;
        }
        else {
        showWarning("u heeft al een parameter toegevoegd, sla deze eerst op.");
        }

}

0
投票

在加载对话框之后,它是一个引导程序对话框的问题,然后是它工作的追加功能

© www.soinside.com 2019 - 2024. All rights reserved.