i'm totally noob to asp.net mvc and currently i'm writing an web app which allows user to select multiple product from a listbox and add them to a dynamic table with rows that can be added or removed.
thus i'm thinking of using jquery to add and remove the table row, thus the table row will be added via append("xxx").
but the thing is i'm not that familiar with asp.net mvc form submission, from my understanding thus far, i can retrieve the value later via form["id"] but if i were to create the table row via that method, i'm thinking it's either going to be with the same id, or i can use a running no id and a hidden input to keep track of how many products that is added.
also i probably want to hide the whole product table when all the products were removed.
p.s. kinda feel that my way is sort like a big fugly messy hack which will come back n bite me one day.
thanks
You can add row just by using: TableRow row1=new TableRow(); TableRows. add(row1);
You can post collections of objects; in MVC. Here is an example: http://www.hanselman.com/blog/ASPNETWireFormatForModelBindingToArraysListsCollectionsDictionaries.aspx
Basically, you can use JQuery to create the table, but ensure the ID's of the controls reference this scheme, so for the next row to add using JQuery, ensure the controls to input the data use the next index in the list, along with the same name as the property in the underlying bound object.
When you post to the server, you can loop through this collection.
To answer the others: you can submit form via JQuery if you don't want a postback to the server (can use ASP.NET MVC to do too)... otherwise, you don't need to worry about the JQuery submit. So that may add usability.
HTH.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With