2011-03-30 72 views
1

我有一组日期。 下面的代码在日期上循环显示带有文本字段的日期。 我想要做的是创建一个具有唯一ID的文本字段数组。 然后将每个日期与其数组文本字段(值)传递到一个PHP脚本。使用Javascript动态地为输入字段数组创建唯一ID

任何想法?

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 />"; 

    } 
    } 

回答

2

你可以给你所有的文本字段名称:name ="dateField[]" 然后在PHP端你将有dateFields数组在$_POST变量。

也就是说提交表格$_POST['dateField']会这个样子后:$_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]; 
+0

好的,如果我想用javascript添加一个新的文本字段;有任何想法吗? – Buki 2011-03-30 23:40:47

+0

哦,我该如何使它从JAVASCRIPT发布? – Buki 2011-03-30 23:41:31

+0

http://www.javascript-coder.com/javascript-form/javascript-form-submit.phtml – 2011-03-30 23:50:20

0
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。这是一件容易引用的事情,而不得不提出一个问题。

+0

谢谢格雷格。我去做。 – Buki 2011-03-31 01:35:47

+0

任何想法如何将日期数组和文本字段数组传递到PHP?我尝试了一切,但没有奏效。所以它应该是这样的:'date1 [value1,value2,value3]; date2 [value1,value2]' – Buki 2011-03-31 01:37:39

相关问题