При использовании Javascript для добавления дополнительных полей формы, которые содержатся в одном наборе полей, я столкнулся с проблемой закрытия тега fieldset, который все еще применяется после первого поля формы. Это приводит к разрыву макета, и мне нужно выяснить, как я могу обойти это.Добавление полей формы с Javascript
Я попытался переместить тэг закрытия поля закрытия вне DIV, где добавляются дополнительные поля, но проверка Firebug по-прежнему показывает его закрытие после первого элемента.
JAVASCRIPT
<script type="text/javascript">
$(function()
{
var template = $('#inventoryItems .inventory:first').clone(),
inventoryCount = 1;
var addInventory = function()
{
inventoryCount++;
var inventory = template.clone().find(':input').each(function()
{
var newId = this.id.substring(0, this.id.length-1) + inventoryCount;
$(this).prev().attr('for', newId); // update label for (assume prev sib is label)
this.name = this.id = newId; // update id and name (assume the same)
}).end() // back to .attendee
.attr('id', 'inv' + inventoryCount) // update attendee id
.appendTo('#inventoryItems'); // add to container
};
$('.btnAddInventory').click(addInventory); // attach event
});
</script>
HTML
<div id="inventoryItems" class="inventoryItems" style="margin:0; padding:0;">
<fieldset style="width:62%; float:left; margin-left: 19%;">
<div id="inv1" class="inventory">
<label>Inventory</label>
<select name="invItem" style="width:92%;">
<?php
$invItem_values = array("id", "name");
display_options_list($dp_conn, $invItem_values, "inventory", "id");
?>
</select>
<a class="btnAddInventory"><img src="images/icn_new_article.png"></a>
<a href="#"><img src="images/icn_trash.png"></a>
</div>
</div>
</fieldset><div class="clear"></div>
закрытия DIV является правильным, но, как я уже говорил в моем первоначальном посте я попытался переместить закрытия Fieldset за ее пределами, так как я пытался добавить другие поля, прежде чем что. Я пошел вперед и переместил его обратно, но это все равно почти тот же случай, когда закрывающий Fieldset устанавливается перед добавленными полями. Однако, спасибо! –
Я обновил ответ, надеюсь, с правильным решением. – Tibos
Ах, отлично, это именно то, чего не хватало. Моя неопытность с Javascript снова наносит удар, но я очень благодарен за помощь в решении этого! –