微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在按钮点击使用jQuery时添加额外的html表行?

我有以下
<table>
  <tr><td>author's first name</td><td>author's last name</td></tr>
  <tr><td><input type='text' name='first_name' /></td><td><input type='text' name='last_name' /></td></tr>
</table>
<a href='' onclick='return false;'>Add Author</a>

并且每次单击链接标签添加作者时,我想创建一个额外的表行,如下所示:

<tr><td><input type='text' name='first_name2' /></td><td><input type='text' name='last_name2'</td></tr>

我看着.append(),我不知道如何使用它为我的情况.而且我想添加数量的新表行.我该如何做?

解决方法

首先,将您的HTML修改为:
<table class="authors-list">
    <tr>
        <td>author's first name</td><td>author's last name</td>
    </tr>
    <tr>
        <td>
            <input type="text" name="first_name" />
        </td>
        <td>
            <input type="text" name="last_name" />
        </td>
    </tr>
</table>
<a href="#" title="" class="add-author">Add Author</a>

(我仅为可见性添加了缩进),并且不使用内联JavaScript.另外,要保持一致,最好为JavaScript字符串使用“(双引号)HTML属性”(单引号).

第二,做这样的事情:

jQuery(function(){
    var counter = 1;
    jQuery('a.add-author').click(function(event){
        event.preventDefault();

        var newRow = jQuery('<tr><td><input type="text" name="first_name' +
            counter + '"/></td><td><input type="text" name="last_name' +
            counter + '"/></td></tr>');
            counter++;
        jQuery('table.authors-list').append(newRow);

    });
});

它将添加一行到表,每一次点击链接有类添加作者(只是为了确保没有其他链接影响),每个插入字段的名称的名字的末尾增加数字1.行将被插入到具有类作者列表的表的末尾(与链接的类相同的原因).见this jsfiddle作为证明.

原文地址:https://www.jb51.cc/jquery/176873.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐