У меня есть простая форма, где каждая строка состоит из 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>
Я думаю, что проблема либо в:
- как определить переменную
line
или
- Я использую неправильный селектор с
.delegate
, так что это должно быть что-то еще, а не form
..?
Любая помощь с благодарностью.