Я пытаюсь ввести форму ввода текста.Все входы будут в упорядоченном списке OL / LI структуры.Рядом со входом будет символ +, который, когда вы щелкнете по нему, должен создать вспомогательный OL и создать вторичный список с другим входом.Если вы щелкнете по нему еще раз, он добавит другой ввод.Новые входы также имеют символы +, и вы можете сделать то же самое.Я только технически хочу, чтобы это углубилось в три, но я думаю, что смогу разобраться с этой частью позже, но на самом деле я хочу узнать, как это сделать.
У меня есть начальная фаза,но он дублирует LI, и я не уверен, что происходит.Это то, что у меня есть.
$('.add_sub_page').live('click',function(e){
$("<ol>").append($(this).parent().clone()).insertAfter(this);
e.preventDefault();
});
Я поднял это в чат-комнате IRC, и мне предоставили это решение, но у него та же проблема, что и у моего первого решения, поэтому я не уверен, чтос ним легче работать или нет, поэтому я предоставлю его.
$('.add_sub_page').live('click',function(e){
var ol = $("ol",this), new_ol = ol.length ? false : true;
ol = new_ol ? $("<ol>") : ol;
ol.append($(this).parent().clone());
if (new_ol) {
ol.insertAfter(this);
}
e.preventDefault();
});
И просто чтобы вы могли видеть, с каким HTML я работаю ...
<form id="sitemap" action="" method="post">
<ol>
<li class="page-title"><label>Page Name: </label><input type="text" name="pages[]" value=""><a class="add_sub_page">+</a></li>
<li class="page-title"><label>Page Name: </label><input type="text" name="pages[]" value=""><a class="add_sub_page">+</a></li>
<li class="page-title"><label>Page Name: </label><input type="text" name="pages[]" value=""><a class="add_sub_page">+</a></li>
<li class="page-title"><label>Page Name: </label><input type="text" name="pages[]" value=""><a class="add_sub_page">+</a></li>
<li class="page-title"><label>Page Name: </label><input type="text" name="pages[]" value=""><a class="add_sub_page">+</a></li>
</ol>
<p><input type="submit" name="submit_step1" value="Next Step"></p>
</form>
Вы можетеПредварительный просмотр проблемы на http://jsbin.com/everu3 - дважды нажмите на тот же знак Плюс (+), чтобы увидеть проблему.
Спасибо за любую помощь, которую вы можете предоставить!