Динамически создавать уникальный идентификатор для массива полей ввода, используя Javascript

У меня есть множество дат. В приведенном ниже коде перечислены даты, чтобы распечатать даты с текстовыми полями. Я пытаюсь создать массив текстовых полей с уникальными идентификаторами. Затем передайте каждую дату с его текстовым полем (значениями) в скрипт php.

Есть идеи?

for (var i in dates) { var d = dates[i]; if (d) { // sometimes the date is not actually selected, that's why we need to check. var length = 12; var str = i+d; var myUniqueTime = str.substring(0,length); myUniqueTime = myUniqueTime.replace(/^\s+|\s+$/g, ''); times= ["<input type=\"text\" id=\""+i+"\" size=\"8\" name=\""+i+"\" onChange=\"changeTimeTo24Hrs()\" value=\""+i+"\" />", "<input type=\"text\" id=\"times\" size=\"8\" name=\"times\" value=\""+i+"\" />"]; // OK, selected. Fill an input field. Or something. Just for example, // we will display all selected dates in the element having the id "output". el.innerHTML += "I = " + i + "<br />" + times + "<br />" + d.print("%A, %Y %B %d") + " <font size='-1'>" + myUniqueTime + "</font><br /><BR />"; } } 

Related of "Динамически создавать уникальный идентификатор для массива полей ввода, используя Javascript"

Вы можете name ="dateField[]" всем своим текстовым полям имя: name ="dateField[]" то на стороне PHP у вас будет массив dateFields в переменной $_POST .

То есть после отправки формы ваш $_POST['dateField'] будет выглядеть так: $_POST['dateField'] = array('date 1...', 'date 2...', 'date 3...'); . $_POST['dateField'] = array('date 1...', 'date 2...', 'date 3...');

РЕДАКТИРОВАТЬ:

Если у вас есть форма:

 <form method="post" action="formHandler.php"> <input type="text" name="dateField[]" value="some date"/> <input type="text" name="dateField[]" value="some other date"/> </form> 

И вы отправляете эту форму, тогда вызывается php-файл formHandler.php (указанный action = "formHandler.php"). В formHandler.php вы можете работать с датами, которые были отправлены.

formHandler.php:

 echo 'First date: ' . $_POST['dateField'][0]; echo 'Second date: ' . $_POST['dateField'][1]; 
 for(var i = 0; i < dates.length; i++){ textbox = document.createElement('input'); textbox.type = 'text'; textbox.id = i; el.appendChild(textbox); } 

Вы должны пометить w3schools.com для javascript api. Это непростая задача, а затем задать вопрос.