[請益] 接收動態表單陣列的值
我在A.php寫一個動態新增欄位 在B.php接收陣列寫進資料庫
不過不知道是JS寫法有問題還是php陣列有問題 我只能接收第一個值= ="
可以請各位前輩幫我看看哪邊有問題嗎?
<A.php html部分>
<table border="0" cellspacing="1" width="100%" id="tb_2">
<tr><td align="left"><font size="4" face="標楷體" >計畫目標(條列式)
</font></td></tr>
<tr><td><input type="text" name="text_2[]" id="2_1" /></td></tr>
</table>
<input type="button" name="button_+" id="2" value="+"
onClick="act_text(this)" />
<input type="button" name="button_-" id="2" value="-"
onClick="act_text(this)" />
<A.php JS部分>
<script language="JavaScript">
var i=2;
function act_text(obj) {
var num = document.getElementById("tb_"+obj.id).rows.length;
switch(obj.value){
case "+":
var Tr = document.getElementById("tb_"+obj.id).insertRow(num);
Td = Tr.insertCell(Tr.cells.length);
Td.innerHTML='<input type="text" name="text_"+obj.id+"[]"
id=obj.id+"_"+i />';
i++;
break;
case "-":
if(num >2) {
document.getElementById("tb_"+obj.id).deleteRow(-1);
}
i--;
break;
}
}
</script>
<B.php接收部分>
foreach($_POST['text_2'] as $i){
$text_2Value .= $i.',';
}
補充:因為A.php有很多要用到同樣的動態表單,所以我JS根據按哪個Button (obj)來決定
新增的欄位是屬於哪個table (tb_?)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.21.235.234
→
11/05 17:51, , 1F
11/05 17:51, 1F
Sorry~
※ 編輯: susaku 來自: 163.21.235.234 (11/05 21:26)
→
11/05 23:47, , 2F
11/05 23:47, 2F
後來搞了一下發現是下面這行的問題
<input type="text" name="text_"+obj.id+"[]" id=obj.id+"_"+i />
name只能接收確切的文字...就是我改寫成
<input type="text" name="text_2[]" />
就可以完整接收到
(id我直接刪掉了...似乎沒有差別)
不過這樣太限定name的名字就沒辦法讓其它元件也使用這個function了.. >_<"
※ 編輯: susaku 來自: 163.21.235.234 (11/06 00:19)
呃....更新這麼多次真不好意思
最後改成
Td.innerHTML='<input type="text" name="text_' +obj.id+ '[]" />';
這樣就可以了
※ 編輯: susaku 來自: 163.21.235.234 (11/06 00:31)
→
11/06 17:28, , 3F
11/06 17:28, 3F
→
11/06 18:49, , 4F
11/06 18:49, 4F
→
11/06 19:22, , 5F
11/06 19:22, 5F
→
11/06 19:23, , 6F
11/06 19:23, 6F
→
11/06 19:23, , 7F
11/06 19:23, 7F
→
11/06 20:46, , 8F
11/06 20:46, 8F
PHP 近期熱門文章
PTT數位生活區 即時熱門文章