• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1804
  • Last Modified:

populate a table with resultset then create a hyperlink in the first cell so that user can click and select row data to populate textfield

Good day to all. Urgent question:

I know how to dynamically populate a table with the results of a database select statement.  The issue is that after I populate the table, I also want to dynamically create a hyperlink in the first cell of each row so that the user can select this hyperlink.  By clicking on the hyperlink, the entire contents of the row will be placed into textfields located above the table so that the user can then make modification to update database.

This is something like the functionality given in a flexgrid where rows can be selected and textfield populated.

3 Solutions
its more of a javascript function then a jsp...

following script should help..

function selectValue(row,param)
 var parms=param.split(',');
 var mycells=row.cells;

& in the table where you are making a link.. put this function..

as onclick=selectValue(this.parentNode,textfield1,textfield2,...);
I have done it where each link contains a URL with all the items in the table as parameters, i.e.

As so on, make sure you concert any of the text into URL friendly strings...

Then in each text box put the value from the URL string in the box:
     String field1 = "";
     try {
          field1 = request.getParameter("categoryName");
     } catch (NullPointerException npe) {
             field1 = "";
     request.setAttribute("field1", field1);

Then for each form field:
 <input type="text" size="5" name="field1" value="<c:out value="${field1}"/>">

And you would do you link the same way:
     < a href="edit.jsp?field1=<c:out value="${field1}"/>">Link<a/>


Its better to put the Resultset results in a HashMap and put that in request object.

in the page where you want to populate the table with the results you simply iterated the hashmap and for the first colum give and hyperlink and onclick of that call a javascript function.

like :

1) get the Resultset and while iterating the resultset only u put the values in the HashMap with an appropriate key.

2) put that hashmap in the request like

3) get the hashmap from the request. like

HashMap map = request.getAttribute("some name");
String javavariable1 = (String)map.get("somekey1");
String javavariable2 = (String)map.get("somekey2");

4) iterate the hashmap in a table and give the first colum as hyperlink and onclick call a javascript function like :

5) Function a()
document.forms[0].fieldname1.value = '<%=javavariable1%>'
document.forms[0].fieldname2.value = '<%=javavariable2%>'

thats it,
hope this satisfies ur requirement.. any clarifications send a comment.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now