Mapping individual buttons on ASP.NET MVC View to controller actions

Posted by skb on Stack Overflow See other posts from Stack Overflow or by skb
Published on 2009-01-02T19:17:16Z Indexed on 2010/05/29 20:22 UTC
Read the original article Hit count: 211

Filed under:

I have an application where I need the user to be able to update or delete rows of data from the database. The rows are displayed to the user using a foreach loop in the .aspx file of my view. Each row will have two text fields (txtName, txtDesc), an update button, and a delete button. What I'm not sure of, is how do I have the update button send the message to the controller for which row to update? I can see a couple way of doing this:

  1. Put each row within it's own form tag, then when the update button is clicked, it will submit the values for that row only (there will also be a hidden field with the rowId) and the controller class would take all the post values as parameters to the Update method on the controller.
  2. Somehow, have the button be scripted in a way to send back only the values for that row with a POST to the controller.

Is there a way of doing this? One thing I am concerned about is if each row has different names for it's controls assigned by ASP.NET (txtName1, txtDesc1, txtName2, txtDesc2), then how will their values get mapped to the correct parameters of the Controller method?

© Stack Overflow or respective owner

Related posts about asp.net-mvc