在表中动态添加行

时间:2016-04-26 09:33:58

标签: javascript asp.net

这里我试图显示模式弹出窗口,其中包含一个文本区域和两个下拉列表。我试图通过点击" AddNewRow"添加行。同一弹出窗口中的按钮。为此,我编写了Javascript函数。

    Java Script function for Adding row.   
    <SCRIPT TYPE="text/javascript">

          function addRow() {
              var tbody = document.getElementById(modaltable).getElementsByTagName("TBODY")[0];
              // create row
              var row = document.createElement("TR");
              // create table cell 1
              var td1 = document.createElement("TD");
              var strHtml1 = "<FONT SIZE=\"+3\"></FONT>";
              td1.innerHTML = strHtml1.replace(/!count!/g, count);

              var td2 = document.createElement("TD")
              var strHtml2 = "<SELECT NAME=\"Alpha-Numeric Scramble\"><OPTION VALUE=\"Alpha-Numeric Scramble\">Alpha-Numeric Scramble<OPTION VALUE=\"Packed-Decimal Scramble\">Packed-Decimal Scramble<OPTION VALUE=\"Date-Time Scrambler\">Date-Time Scrambler</SELECT>";
              td2.innerHTML = strHtml2.replace(/!count!/g, count);

              var td3 = document.createElement("TD")
              var strHtml3 = "<SELECT NAME=\"Yes\"><OPTION VALUE=\"Yes\">Yes<OPTION VALUE=\"No\">No</SELECT>";
              td2.innerHTML = strHtml3.replace(/!count!/g, count);

              row.appendChild(td1);
              row.appendChild(td2);
              row.appendChild(td3);

              count = parseInt(count) + 1;
              // append row to table
              tbody.appendChild(row);

          }
              </script>

这是对于模态弹出设计。

    <table class="table .table-responsive" id ="modaltable">
    <tbody>
            <tr>
            <td ><textarea class="form-control" id="comment" ></textarea></td>
            <td ><div class="dropdown">
                <asp:DropDownList ID="DropDownList2" runat="server" CssClass="selectpicker">
                    <asp:ListItem Text="Alpha-Numeric Scramble"/>
                    <asp:ListItem Text="Packed-Decimal Scramble"/>
                    <asp:ListItem Text="Date-Time Scrambler"/>
                    </asp:DropDownList>
             </div></td>
            <td><div class="dropdown">
             <asp:DropDownList ID="DropDownList1" runat="server" CssClass="selectpicker">
                 <asp:ListItem Text="Yes"/>
                    <asp:ListItem Text="No"/>
             </asp:DropDownList>

             </div></td></tr></tbody></table>

这些是模态弹出窗口中的按钮,

 <div class="modal-footer">
                <asp:Button ID="Addnewrow" runat="server" CssClass="btn btn-primary" Text="Add New Row" OnClientclick= "addRow()"/>

这里如果我点击&#34; AddNewRow&#34;按钮一行应该添加。

遗憾的是无法显示。上述Java脚本中的错误是什么。任何帮助请。

1 个答案:

答案 0 :(得分:1)

以下是您的代码中发生的情况。您已使用<ASP:Button>控件来触发您的javascript函数。最好使用HTML <button>,如下所示:

<button ID="Addnewrow" class="btn btn-primary" onclick= "addRow()"> Add New Row </button>

如果您想使用服务器端控件,那么您应该在OnClientClick之后停止回发 您的代码中需要进行一些更改。
首先在return false;中添加function addRow() { 然后使用OnClientclick= "return addRow()"