2010-05-28 4 views
0

Je crée une page avec certaines zones de texte générées dynamiquement. Les identifiants de toutes les zones de texte sont également générés lors de l'exécution. Je veux envoyer toutes les valeurs de zones de texte à mon contrôleur et enregistrer ces données. Comment j'obtiens toute la valeur des boîtes de texte. Je peux utiliser javascript ou JQuery. Quelqu'un peut-il me suggérer?Zones de texte générées dynamiquement par Asp.net MVC

Merci à l'avance ..

Ashish

+0

Ajoutez-vous vos zones de texte à l'intérieur d'un formulaire et souhaitez-vous effectuer une requête POST standard, ou devez-vous les envoyer via une requête GET? – tpeczek

Répondre

0

En asp.net mvc vous êtes autorisé à générer le code html directement dans la vue. Par exemple:

<% for(int i = 0; i < 10; i++) { %> 
    <input type='text' name='text-<%=i%>' id='text-<%=i%>' value="My box <%=i%>" /> 
<% } %> 

Cela peut également être généré par JQuery. Si vous avez les données côté serveur, il est préférable d'utiliser cette méthode. Si elles doivent être calculées côté client, utilisez JQuery.

Vous pouvez également utiliser l'assistant HTML:

<%=Html.TextBox("name", "default value")%> 

Vous pouvez ajouter des paramètres à cela aussi, si vous devez définir l'ID par exemple.

Ensuite, vous récupérerez ceci dans votre contrôleur, en ajoutant une FormCollection aux arguments et en lisant cela.

[HttpPost] 
public ActionResult Example(int id, FormCollection post) { 
    // Here FormCollection["text-0"] is equal to "My box 0" 
} 
0

Ou peut-être que vous venez d'itérer toutes les valeurs de

Request.Form.Item 

dans votre contrôleur action ... Il suffit d'utiliser un simple pour-chaque-boucle pour parcourir chaque valeur soumise.

Questions connexes