Sunday, May 19, 2024
 Popular · Latest · Hot · Upcoming
174
rated 0 times [  177] [ 3]  / answers: 1 / hits: 26339  / 11 Years ago, tue, august 6, 2013, 12:00:00

I have a table where I can dynamically add rows. I want to get the data in each row to a php array when I submit the save button . Can please somebody help me on this. I'm new to java-script and know very little about it. Thank you!



<HTML>
<HEAD>
<TITLE> Add/Remove dynamic rows in HTML table </TITLE>
<SCRIPT language=javascript>
function addRow(tableID) {

var table = document.getElementById(tableID);

var rowCount = table.rows.length;
var row = table.insertRow(rowCount);

var cell1 = row.insertCell(0);
var element1 = document.createElement(input);
element1.type = checkbox;
element1.name=chkbox[];
cell1.appendChild(element1);

var cell2 = row.insertCell(1);
cell2.innerHTML = rowCount + 1;

var cell3 = row.insertCell(2);
var element2 = document.createElement(input);
element2.type = text;
element2.name = txtbox[];
cell3.appendChild(element2);


}

function deleteRow(tableID) {
try {
var table = document.getElementById(tableID);
var rowCount = table.rows.length;

for(var i=0; i<rowCount; i++) {
var row = table.rows[i];
var chkbox = row.cells[0].childNodes[0];
if(null != chkbox && true == chkbox.checked) {
table.deleteRow(i);
rowCount--;
i--;
}


}
}catch(e) {
alert(e);
}
}

</SCRIPT>
</HEAD>
<BODY>

<INPUT type=button value=Add Row onClick=addRow('dataTable') />

<INPUT type=button value=Delete Row onClick=deleteRow('dataTable') />
<form action= method=post>
<?php $i= 1; ?>
<TABLE id=dataTable width=350px border=1>
<TR>
<TD><INPUT type=checkbox name=chk/></TD>
<TD> 1 </TD>
<TD> <INPUT type=text name=harsh/> </TD>
</TR>
</TABLE>
<input name=saveNewSales type=submit value=Save id=button2 style=text-align:center/>
</form>
<?php

foreach($_POST as $name => $content) { // Most people refer to $key => $value
echo The HTML name: $name <br>;
echo The content of it: $content <br>;
}
?>

</BODY>
</HTML>

More From » php

 Answers
46

Your code is right, just little change over there



<TR>
<TD><INPUT type=checkbox name=chk/></TD>
<TD> 1 </TD>
<TD> <INPUT type=text name=<?php echo $i; ?>/> </TD>
</TR>


replace with this code



<TR>
<TD><INPUT type=checkbox name=chkbox[]/></TD>
<TD> 1 </TD>
<TD> <INPUT type=text name=txtbox[]/> </TD>
</TR>


and your work finish


[#76513] Saturday, August 3, 2013, 11 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
michaelashelbieh

Total Points: 303
Total Questions: 139
Total Answers: 97

Location: Suriname
Member since Sun, Oct 17, 2021
3 Years ago
;