繁体   English   中英

点击图片按钮jQuery生成tr

[英]Generate tr on click of Image button jquery

我有一种情况,当我单击+按钮时,我想复制现有的<tr><i class="fa fa-plus" aria-hidden="true"></i>

以下是我的<tr> 如何使用jQuery或JavaScript生成此

 <tr>
    <td>
        <div class="row noPadding vendorForm">
            <div class="vendorDaterow">
                <div class="vendorName">
                    <label>SP Vender Name</label><span>Shri Kamalkanth Co.</span>
                </div>
                <div class="vendorFromDate">
                    <label>From Date</label><span class="datepicker"><input type="text" id="spFromDate1" /><i class="fa fa-calendar" aria-hidden="true"></i></span>
                </div>
                <div class="vendorToDate">
                    <label>To Date</label><span class="datepicker"><input type="text" id="spToDate1" /><i class="fa fa-calendar" aria-hidden="true"></i></span>
                </div>
            </div>
            <div class="add">
                <i class="fa fa-plus" aria-hidden="true"></i>
            </div>
            <i class="max">(Maximum 5 Vendors)</i>

        </div>
    </td>
</tr>

您首先要通过最接近的()找到克隆()<tr/> ,然后通过insertAfter()将其作为同级插入。 确保也将true作为参数传递,以便所有后代及其事件和数据一起传递。

$('.add').on('click', function() {
  var $tr = $(this).closest('tr');

  $tr.clone(true, true).insertAfter($tr)
});

你可以用这个

 (function () { var toAddCloneCount = 2; $('.add').on('click', function() { var $tr = $(this).closest('tr'); var $tr2 = $tr.clone(true, true); $tr2.find(".vendorName").children('label').remove(); $tr2.find(".add").children().remove(); $tr2.find(".vendorFromDate").children('label').remove(); $tr2.find(".vendorToDate").children('label').remove(); $tr2.find('#txtVendorName').prop('id', 'txtVendorName' + toAddCloneCount); $tr2.find('#spFromDate1').prop('id', 'spFromDate' + toAddCloneCount); $tr2.find('#spToDate1').prop('id', 'spToDate' + toAddCloneCount++); $tr2.insertAfter($tr); }); })(); 
 .vendorName,.vendorFromDate,.vendorToDate{ width:33%;float:left;} 
 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css"/> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <table> <tr> <td> <div class="row noPadding vendorForm"> <div class="vendorDaterow"> <div class="vendorName"> <label>SP Vender Name</label><span>@*Shri Kamalkanth Co.*@<input type="text" name="nmVendorData" id="txtVendorName" /></span> </div> <div class="vendorFromDate"> <label>From Date</label><span class="datepicker"><input type="text" id="spFromDate1" /><i class="fa fa-calendar" aria-hidden="true"></i></span> </div> <div class="vendorToDate"> <label>To Date</label><span class="datepicker"><input type="text" id="spToDate1" /><i class="fa fa-calendar" aria-hidden="true"></i></span> </div> </div> <div class="add"> <i class="fa fa-plus" aria-hidden="true"></i> </div> <i class="max">(Maximum 5 Vendors)</i> </div> </td> </tr> </table> 

使用clone()after()

 $(document).ready(function(){ $("i.fa-plus").click(function(){ var val = $("tr:last").clone() $("tr:last").after(val) }); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <table> <tr> <td> <div class="row noPadding vendorForm"> <div class="vendorDaterow"> <div class="vendorName"> <label>SP Vender Name</label><span>Shri Kamalkanth Co.</span> </div> <div class="vendorFromDate"> <label>From Date</label><span class="datepicker"><input type="text" id="spFromDate1" /><i class="fa fa-calendar" aria-hidden="true"></i></span> </div> <div class="vendorToDate"> <label>To Date</label><span class="datepicker"><input type="text" id="spToDate1" /><i class="fa fa-calendar" aria-hidden="true"></i></span> </div> </div> </div> </td> </tr> </table> <div class="add"> <i class="fa fa-plus" aria-hidden="true">+</i> </div> <i class="max">(Maximum 5 Vendors)</i> 

您需要以某种方式<tr>的模板。 使用某种模板引擎或惰性方式:在页面加载时复制它。 (复制<tr>时没有现有输入)

var $template = $('yourTrSelector').clone();

然后将其粘贴在按钮单击上。

$('yourButtonSelector').on('click', function(){
  $('yourTableSelector').append($template.copy());
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM