我有一个简单的形式,每行包含3个输入字段.在其中一个领域,我使用jscolor.js(字段有一个class="color"因此绑定JS).
但是,当我使用jQuery添加新行时delegate(),输入字段不绑定JS,并且不存在预期的功能.http://jsfiddle.net/alexwald/qARzP/
<script>
var line = '<li class="form_line" id="line">
<span>
<label for="item">Item:</label>
<input type="text" required="required" placeholder="what item is this?" id="item" name="item[]>
</span>
<span>
<label for="amount">Amount: </label>
<input required="required" type="number" id="amount" name="amount[]>
</span>
<span>
<label for="color">Color: </label>
<input type="text" required="required" class="color {pickerClosable:true, hash:true ,pickerFace:3,pickerBorder:0}" id="color" name="color[]">
</span>
</li>';
$(document).ready(function() {
$("form").delegate(".add", "click", function(){
$('ul').append(line);
}); // end of adding
}); //end of main func
</script>
Run Code Online (Sandbox Code Playgroud)
我认为问题出在:
line变量,或.delegate,所以它应该是别的而不是form......?任何帮助非常感谢.