У меня есть форма PHP с несколькими строками. Эти строки имеют поля, которые выглядят так:
<input type="text" name="addresses[n][0]" value="mail " id="address" class="validate">
У меня есть следующий код в Javascript для добавления и удаления строк:
$(document).ready(function () {
$('select').material_select();
});
$(function ()
{
$(document).on('click', '.btn-add', function (e)
{
e.preventDefault();
var controlForm = $('.controls form:first'),
currentEntry = $(this).parents('.entry:first'),
newEntry = $(currentEntry.clone()).appendTo(controlForm);
newEntry.find('input').val('');
}).on('click', '.btn-remove', function (e)
{
$(this).parents('.entry:first').remove();
e.preventDefault();
return false;
});
});
Моя проблема в том, что после отправки этой формы в POST с добавленными строками добавленные имеют одинаковый индекс 'n', потому что они клонированы. Как я могу получить доступ к их атрибуту name в переменной newEntry, которая является div целой строки?
Я пробовал такие вещи, как
newEntry.find('name').val('addressesNewName')
newEntry.find('input').getAttribute('name') = 'addressesNewName'
newEntry.find('name').setAttribute("name","addressesNewName");
newEntry.find('input').find('name').val('addressesNewName');
newEntry.find('input').attr('name') = 'newaddresses';
newEntry.find('input').attr('name').val('newaddresses');
Но имя в поле ничего не меняет.
Мне не нужна помощь в назначении n значений и т. Д., Только как изменить имя поля ввода.