Creates an interface to add and remove a repeatable group of input elements. Demo page.
Usage
To use the plugin, you need to add the following files.
Repeating Forms
Alert Repeating
An example that warns before the row is deleted.
This month's report will be prepared.
TodayAn email will be sent to the customer.
TodayThe meeting will be held.
YesterdayConversation with users.
YesterdayPayment refund will be made to the customer.
20 min agoPayment form will be activated.
20 min agoSigned in with a different device.
YesterdayYour billing information is not active.
YesterdayYour subscription has expired.
TodayYour storage space is running low
TodayCreates an interface to add and remove a repeatable group of input elements. Demo page.
To use the plugin, you need to add the following files.
<!-- Javascript -->
<script src="libs/form-repeater/repeater.min.js"></script>
<form class="repeater-1">
<div data-repeater-list="group-a">
<div data-repeater-item>
<div class="row">
<div class="col-md-3 col-sm-12 mb-3">
<label for="name" class="form-label">Name</label>
<input type="email" class="form-control" name="name" id="name" placeholder="Enter email id">
</div>
<div class="col-md-3 col-sm-12 mb-3">
<label for="email" class="form-label">Email</label>
<input type="email" class="form-control" name="email" id="email" placeholder="Enter email id">
</div>
<div class="col-md-3 col-sm-12 mb-3">
<label for="profession" class="form-label">Profession</label>
<select name="profession" id="profession" class="form-control">
<option>Select</option>
<option value="FontEnd Developer">Designer</option>
<option value="BackEnd Developer">Developer</option>
<option value="Business Analytics">Tester</option>
<option value="Project Coordinator">Manager</option>
</select>
</div>
<div class="col-md-3 col-sm-12">
<div><label class="form-label"> </label></div>
<button class="btn btn-danger" data-repeater-delete>Delete</button>
</div>
</div>
</div>
</div>
<button type="button" class="btn btn-primary" data-repeater-create>Add</button>
</form>
$(document).ready(function () {
$('.repeater-1').repeater();
});
An example that warns before the row is deleted.
<form class="repeater-2">
<button type="button" class="btn btn-primary mb-3" data-repeater-create>Add</button>
<div data-repeater-list="group-a">
<div data-repeater-item>
<div class="row">
<div class="col-md-2 col-sm-12 mb-3">
<label for="username" class="form-label">Username</label>
<input type="text" class="form-control" name="username" id="username" placeholder="Username">
</div>
<div class="col-md-2 col-sm-12 mb-3">
<label for="phone" class="form-label">Phone</label>
<input type="text" class="form-control" name="phone" id="phone" placeholder="Enter email id">
</div>
<div class="col-md-2 col-sm-12 mb-3">
<div><label class="form-label"> </label></div>
<button type="button" class="btn btn-danger btn-floating" data-repeater-delete>
Delete
</button>
</div>
</div>
</div>
</div>
</form>
$('.repeater-2').repeater({
hide: function (deleteElement) {
swal({
title: "Are you sure?",
text: "Are you sure you want to delete this element?",
icon: "warning",
buttons: true,
dangerMode: true,
}).then((willDelete) => {
if (willDelete) {
$(this).slideUp(deleteElement);
}
})
}
});
<form class="nested-repeater">
<div data-repeater-list="outer-list">
<div class="mb-3" data-repeater-item>
<p>Category</p>
<div class="d-flex mb-3">
<input type="text" class="form-control" name="text-input"/>
<button class="btn btn-danger flex-shrink-0 ms-3" data-repeater-delete type="button">
Delete
</button>
</div>
<!-- innner repeater -->
<div class="card bg-light">
<div class="card-body">
<p>Products</p>
<div class="inner-repeater">
<div data-repeater-list="inner-list">
<div class="d-flex mb-3" data-repeater-item>
<input type="text" class="form-control" name="inner-text-input"/>
<button class="btn btn-danger flex-shrink-0 ms-3" data-repeater-delete type="button">
Delete
</button>
</div>
</div>
<button class="btn btn-primary" data-repeater-create type="button">
Add Product
</button>
</div>
</div>
</div>
</div>
</div>
<button class="btn btn-primary" data-repeater-create type="button">
Add Category
</button>
</form>
$('.nested-repeater').repeater({
repeaters: [{
selector: '.inner-repeater'}]});