以下代码用于重复div。但这是行不通的。请帮我。
<html>
<head>
<script>
$(".repeat").live('click', function () {
var $self = $(this);
$self.after($self.parent().clone());
$self.remove();
});
</script>
</head>
<body>
<form>
<div class="repeatable">
<table border="1">
<tr><td><input type="text" name="userInput[]"></td></tr></table>
<button class="repeat">Add Another</button>
</div>
<input type="submit" value="Submit">
</form>
</body>
</html>
最佳答案
首先将jquery
添加到code
中,并使用on()代替live()。
还要在$(function(){...})
中编写您的代码,以便您的代码在document ready
之后可以使用
<script src="http:/code.jquery.com/jquery-1.9.1.js"></script>
<script>
$(function () {
$(".repeat").on('click', function () {
var $self = $(this);
$self.after($self.parent().clone());
$self.remove();
});
});
</script>
Working Demo
已更新,如果您希望它适用于
more inputs
,请尝试此操作,$(function () {
$(".repeat").on('click', function (e) {
e.preventDefault();// to prevent form submit
var $self = $(this);
$self.before($self.prev('table').clone());// use prev() not parent()
//$self.remove();// remove this line so you can add more inputs
});
});
Updated Demo
关于javascript - 单击按钮时重复div,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21135520/