1

J'ai une table construite à partir d'une liste de codes de défaut.Une vue partielle peut-elle être utilisée pour effectuer des mises à jour d'éléments Ajax?

Une partie de chaque ligne peut-elle charger un élément de sous-table complet avec des boutons de soumission?

Table d'échantillons:

<table><tr> 
<th>Code</th><th>Description</th> 
<th>Impact to your customers</th> 
<th>Impact to your associates</th> 
<th>Save</th> 
<th>Save Errors</th></tr> 

Lorsque les 2 premières colonnes sont remplies à partir de la table de consultation, et les 3 colonnes suivantes représentent une forme de sorte que l'utilisateur peut définir les valeurs ou les mettre à jour à partir des valeurs précédentes.

Puis-je avoir en quelque sorte 3 TD éléments par ligne un formulaire Ajax individuel avec le codeId incorporé comme une valeur cachée? Que hériteraient mes vues fortement typées? la couche externe hériterait de IEnumerable<DefectDTO> et les vues partielles hériteraient du type AssessmentDTO?

Voici le tableau réel que je suis en train de se rendre à la fonction:

<table> 
    <tr> 

     <th> 
      Code 
     </th> 
     <th> 
      Description 
     </th> 
     <th> 
      Document 
     </th> 
     <th> 
      Customer Contact Required for Resolution 
     </th> 
     <th> 
      AssociateSeverity 
     </th> 
     <th> 
      ShareholderSeverity 
     </th> 
     <th> 
      CustomerSeverity 
     </th> 
     <th> 
      RegulatorySeverity 
     </th> 
     <th> 
      RootCause 
     </th> 
     <th> 
      Investor Requirements* 
     </th> 
    </tr> 

<% foreach (var item in Model.DefectCodes) { %> 

    <tr> 
     <% using (Ajax.BeginForm("Create", new AjaxOptions())) 
      {%> 
     <td> 
      <%= Html.Encode(item.Code)%> 
     </td> 
     <td> 
      <%= Html.Encode(item.Description)%> 
     </td> 
     <% Html.RenderPartial("Create",null, ViewData); %><!-- This is where the form is --> 
     <% } %> 
    </tr> 

<% } %> 

</table> 
+0

Pouvez-vous ajouter plus de détails, comme les modèles que vous utilisez? pour autant que je comprends, vous avez besoin d'un formulaire partiel dans votre table, avec deux modèles différents, un pour afficher les deux premières colonnes et l'autre pour les formulaires, mais pourquoi avez-vous deux boutons pour chaque rangée (Enregistrer et enregistrer les erreurs)? – JOBG

+0

Il y aurait seulement 1 bouton, enregistrer. la dernière colonne serait le résumé de validation/les erreurs de validation. Je peux ajouter plus de détails demain au travail aussi si cela ne montre pas assez de ce que j'essaie d'accomplir. – Maslow

Répondre

0
<% foreach (var item in Model.DefectCodes) { %> 

    <tr> 
     <% using (Ajax.BeginForm("Create", new AjaxOptions())) 
      {%> 

     <!--should be easy like this!--><!--ur codeid here--> 
     <%=Html.HiddenFor(modelItem => item.codeid)%> 

     <td> 
      <%= Html.Encode(item.Code)%> 
     </td> 
     <td> 
      <%= Html.Encode(item.Description)%> 
     </td> 
     <% Html.RenderPartial("Create",null, ViewData); %><!-- This is where the form is --> 
     <% } %> 
    </tr> 

<% } %> 

</table> 

sa juste valeur cachée permet de résoudre ur! problème ..

vous ne devez pas le mettre dans un TD parce que vous voulez qu'il soit caché de sorte qu'il aura toujours la valeur pour vous mais ne sera pas montré dans la forme ou dans la table ou dans la vue. peut garder 3 TD et obtenir plus de valeur que le montré sur le formulaire.

Questions connexes