obtenir la valeur de certains de ligne dynamique de la table en jsp
j'ai une page jsp où je suis dynamiquement l'affichage des enregistrements de la base de données dans une table, avec des lignes dynamiques générés. À chaque ligne, il y a un bouton radio, de sorte que l'utilisateur peut sélectionner une ligne.
Le code pour la page1.jsp est:
<form action="page2.jsp" method="post">
<table>
<%
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String database = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=C:/Users/hp/Documents/Sample1.accdb";
Connection con = DriverManager.getConnection(database, "", "");
Statement stmnt = con.createStatement();
String source=request.getParameter("from");
String dest=request.getParameter("to")
ResultSet resultset = stmnt.executeQuery("select * from Trains123 where From='" +source+ "' and To='" +dest+ "' ");
while(resultset.next())
{
%>
<tr>
<td><% out.println(resultset.getString("From")); %></td>
<td><% out.println(resultset.getString("To")); %></td>
<td><% out.println(resultset.getString("TrainName")); %></td>
<td><input type="radio" name="TName" value="<%= resultset.getString("TrainName")%>">book</td>
</tr>
</table>
</form>
et le code de la page2.jsp est:
<% out.println(request.getParameter("Tname")); %>
Il n'y a pas de problème avec le jeu d'enregistrements, les valeurs sont arriver imprimé. mais le bouton radio n'est pas affiché.Aussi, Si il y a 2 enregistrements du jeu, seul le premier est imprimé sans le bouton radio. J'ai débogué le fichier, le contrôle s'arrête sur le bouton radio en ligne.
Je n'ai aucune idée, où l'erreur est et quel est le problème en donnant de la dynamique de la valeur du bouton radio.
Tout ce que je veux faire est de trouver la ligne sélectionnée par l'utilisateur.
Vous devez vous connecter pour publier un commentaire.
AFAIR spécification JDBC ne donne pas de garantie, que vous pouvez appeler
getXxx
sur un ensemble de résultats avec le même nom de colonne/nombre deux fois. La plupart des pilotes JDBC ne prennent en charge, mais certains pourraient ne pas je ne suis pas sûr si ODBC n'est pas sans doute cette exception. Donc, essayez d'abord d'obtenir des valeurs de toutes les colonnes dans une rangée pour les variables supplémentaires comme ceci:et de l'utiliser de cette façon:
Aussi, merci de faire échapper ces valeurs, comme si
trainName
contiendrait'"'
personnage, vous risquez de casser le code HTML.Mais plus importante est la façon dont vous avez écrit votre code. Tout d'abord, vous devez séparer couche de la vue (JSP) du code. Vous devez donc créer une classe, qui lit la liste des trains et il suffit de la mettre en demande, plus ou moins comme ceci:
Maintenant écrire une servlet qui s'occupe de votre formulaire:
Et enfin modifier votre page1.jsp que:
Ont une bonne chance avec elle.