2010-07-19 6 views
0

Il arrive que dans mon application je jette beaucoup de données à une logique: itérer, mais ils ont besoin de plus de données, les données qui dépendent de chaque ligne de l'itérer. J'ai donc pensé mettre un bouton de soumission dans chaque rangée de l'itération (ou peut-être un lien), afin que je puisse rediriger l'application vers la page suivante. Le problème est, l'actionForm toujours soumettre la première rangée de données.Multiple Soumettre en un formulaire en utilisant des entretoises 1.3

J'ai résolu ce problème en utilisant javascript: en réglant dans la première rangée les données de la ligne sélectionnée. Mais je me demandais s'il y avait une autre solution, comme utiliser indexed = "true" dans le bouton submit et ensuite, d'une manière ou d'une autre, obtenir les données adéquates sans le javascript.

Merci pour tout!

Modifier pour ajouter quelques exemples de code:

<logic:iterate id="MyIterator" name="sql" indexId="index"> 
<html:form action="MoreData" styleId="MoreData"> 
<tr> 
<td><html:image src="docs/images/more_data.png" property="moreData" indexed="true"/></td> 
<td><bean:write name="MyIterator" property="cod_user"/></td> 
<td><bean:write name="MyIterator" property="txt_user"/></td> 
<td><bean:write name="MyIterator" property="date_born"/></td> 
<td><bean:write name="MyIterator" property="id_number"/></td> 
</tr> 
</html:form> 
</logic:iterate> 

Répondre

1

type d'entrée < = "submit" name = "BTN []" value = "loopVarible"/> type d'entrée < = "submit" name = » btn [] "value =" loopVarible "/ >

+0

Je comprends que avec indexed = "vrai" y avoir quelque chose sur les lignes de etc ... La question va sur d'autres lignes, comme comment puis-je récupérer le les données exactes de la ligne sélectionnée dans mon action? – Random

1

votre question n'est pas claire sans un exemple de code.

vous êtes probablement mieux avec une forme par rangée.

+0

Ajout d'un exemple de code. Mon problème est que quand j'appelle le 'moreDataAction' (défini dans strut-config) il m'apporte toujours la première rangée. J'ai ajouté le paramètre indexed = "true" donc maintenant il analyse en html comme "moreData [0]", mais je ne sais pas comment l'utiliser pour amener les données spécifiques à mon action. – Random

1

Votre valeur de styleId (MoreData) est-elle la même pour toutes les formes de la page? Cela finit par être l'attribut id du formulaire html. Si elles sont toutes pareilles, cela pourrait causer des problèmes lors de la soumission du formulaire.

+0

Cela fait partie du problème. Si le formulaire est à l'intérieur de la procédure, il crée des formes sql.size avec l'id = "MoreData", et ensuite il soumet le premier (comme c'est le premier dans le code html). Je pensais pouvoir faire quelque chose avec l'attribut indexé, cependant. – Random

Questions connexes