Hi,
I need to submit a HTML form dynamically. I have tried few ways of doing the same, but the values of the dynamically generated form elements were not retrieved upon form submission. Below is the code for client and server side. Kindly rectify my error. Thanks.
Client Side:
Server Side: (A Servlet)
I need to submit a HTML form dynamically. I have tried few ways of doing the same, but the values of the dynamically generated form elements were not retrieved upon form submission. Below is the code for client and server side. Kindly rectify my error. Thanks.
Client Side:
Code:
<script type="text/javascript">
var count = 1;
function addRow(tableID){
count++;
document.new_contact_form.count.value = count;
var table = document.getElementById(tableID);
var rowCount = table.rows.length;
var row = table.insertRow(rowCount-1);
var cell1 = row.insertCell(0);
var element1 = document.createElement("input");
element1.type = "checkbox";
cell1.appendChild(element1);
var cell2 = row.insertCell(1);
var element2 = document.createElement("input");
element2.type = "text";
element2.size = "30";
element2.name = "contact_name" + count;
cell2.appendChild(element2);
var cell3 = row.insertCell(2);
var element3 = document.createElement("input");
element3.type = "text";
element3.size = "30";
element3.name = "contact_number" + count;
cell3.appendChild(element3);
}
function deleteRow(tableID){
try {
var table = document.getElementById(tableID);
var rowCount = table.rows.length;
count--;
document.new_contact_form.count.value = count;
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>
Code:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
scount = request.getParameter("count");
count = Integer.parseInt(scount);
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
con = DriverManager.getConnection("jdbc:oracle:thin:@system-name:port:ServiceName", "username", "password");
stmt = con.createStatement();
} catch (Exception e) {
e.printStackTrace();
}
for(int i = 1; i <= count; i++){
contactNames[i] = request.getParameter("contact_name"+i); // DISPLAYS NULL POINTER EXEPTION HERE
contactNumbers[i] = request.getParameter("contact_number"+i);
try {
stmt.executeUpdate("insert into sms_contacts values('Test_User','"
+ contactNames[i] + "','" + contactNumbers[i] + "')");
} catch (SQLException e) {
e.printStackTrace();
}
}
out.write("<b>Contact Details have been saved!</b>");
}
Comment