MVC :: Getting Values In Html Table To A Controller Action Method?
May 11, 2010I have an editable table in my view.
how can i accept the whole table in a controller action method?
what parameter should i gave to accept the whole table
I have an editable table in my view.
how can i accept the whole table in a controller action method?
what parameter should i gave to accept the whole table
Currently, I am working with ASP.NET MVC1 and am still learning about Model Binding and how values from a View are passed back to the Controller / Model. Specifically, I want take an existing Model, create a Table and populate the Rows of the Table, allow the user to edit some fields and pass it back. In my example, I have a Class called "Ingredient" which has 4 public accessories: Name, Barcode, Amount, and Unit.
[Code]....
Or is this not possible? (Basically, I'm trying to re-create a datagrid where certain fields are editable and certain are not...)
I'm using MVC2.
I added routher for url: "autors/year-range/1928/page2"
routes.MapRoute("AuthorsPopular",
"authors/{action}/{param}/{page}",
[code]...
Since Year-Range is invalid method name.
I know we can set autopostback property of dropdwonlist using javascript or jquery and it will go to action controller specified in Form tag.
[Code]....
but how can we set it to some different action other then what we specified in Form Tag.
I'm just starting to use the TestHelpers in MvcContrib. I want to try and test an action method on my controller that itself tests if IsAjaxRequest() is true. I've used the same code that is shown in the TestHelper samples to set up the TestControllerBuilder
_controller = new StarsController();
_builder = new TestControllerBuilder();
_builder.InitializeController(_controller);
So that _controller has all the faked/mocked HttpContext inside it, which is really great. But what do I do now to force IsAjaxRequest() on the internally faked Request object to return true?
When I use editurl property in my jqgrid, the controller action gets called after I hit submit button on adding a new row. But how do I get all the grid rows there? Which parameter should I read from my controller action method in order to get the grid data?
[code]...
I am creating one Json array object and trying to pass it in MVC controller action method but i am getting null paramerter; as per my knowledge json only maps .net primitive datatypes.... so it assign null value.
Note: when i have look at request object i found that there are three parameter of created array. But how to get that value as parameter of function?
I'm using V.S. 2008 and asp.net MVC. I have a form in this page that user selects various items from Select controls. I then construct a string varible that contains each selected element's id a hidden input control that holds this information. How can I pass this variable (and it value of course) to a Controller Action? I am using regular Html Form and the Submit button.
In the following code you see the "ResearchInterests" is the one that holds the string but I can't even reference it in my Controller action, Search. How can I correct this?
[Code]....
Assume the current executing action method is Index() in Home controller. From within Index(), how to obtain the physical file path of the Home controller? Assume we don't know the file structure until runtime.
View 2 RepliesI am having a dropdown server control on view, when the user clicks the submit btn at that time the form gets posted. and a action method in view controller is called with verb=post.
But the problem is that how should i get reference to the dropdown server control in the action method of view controller?
In the view I have a HTML button:
<input type="submit" value="Submit" />
Also I have a dropdownlist, how do I call the controller's action after I click the "Submit" button?
And how do I pass the Model back to the controller action as well?
The reason I want to pass back the model (or other object/class) to controller's action is I might have 5 dropdown lists and 3 edit boxes values to be sent as parameters. So I would like to assign these parameters into a object and send it back to controller's action.
How does a controller action return an HTML stream as the View? ( in place of the name of the View file )
I want to return a simple "error detected" or "action completed" page to the browser. And I dont want to clutter up my project with yet another view. The return string being "<html><body><h1>Error. Customer xxxx is not found</h1></body></html>"
( thinking about it, better to have a general purpose view in a folder named "Common". Then pass the message text in ViewData. Still curious to know how to return an html stream. )
m having problem in passing parameter to controller action, i have done the following
Url.Action("SchoolDetails","School",new{id=item.SchoolId}) and my controller action follows
public ActionResult SchoolDetails(string schoolId,_ASI_School schoolDetail)
{
schoolDetail = SchoolRepository.GetSchoolById(schoolId);
return View(schoolDetail);
}
i dn't know why the schoolId above in action is getting null..
I am quite new to MVC development and facing some basic issues.
I am having a form on which I am taking input form user. It is bould to one of the properties on Model class.
I am having a submit button
<input type="submit" value="Save"/>
Now I want to call Save Action in my controller on click on this Save button.
But it is not working. I have checked on following things:
1. My HTML page is correctly point to the controller
2. I have written HTML code as
<%= HTML.BeginForm("Save","ControllerName", FormMethod.Post); %>
<input type="submit" value="Save"/>
<%= HTML.EndForm();%>
When i try to insert values from textbox to db the values are not getting inside controllers action method.
My View Page codings
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<MvcEntity.Models.Movie>" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
[Code].....
System.ArgumentException: Value cannot be null or empty.
I'm creating an ASP.NET MVC 2 (RTM) project that uses areas. The Index action of the Home controller of one area needs to use RenderAction to generate a sub-section of the page. The action called is also defined in the same Home controller. So the call should just be:
<% Html.RenderAction("List") %>
However, I get an exception:A public action method 'List' was not found on controller 'RareBridge.Web.Areas.Events.Controllers.HomeController'.
Note that I'm not in the "Events" area! I'm in a completely different area. If I remove the "Events" home controller, then the exception still occurs but names a different controller (still not the one I want it to call).
I've also tried providing the controller name and area to the RenderAction method, but the same exception occurs. What is going on here?
BTW: I am using Autofac as my IoC container
how to make a stadard HTML button call an action method and pass parameters to it? Can you please show me an example of how to do this? THis is the method:
public ActionResult CCDReview([DefaultValue(1) int CUrrentPage])
{
//method code is here.
}
Yes, my button is wrapped in a form, and it's a "submit" button.
I'm trying to write a controller method that returns an ActionResult.
In this method, i would like to:
1. call an HTML helper method
2. Capture and store the HTML helper's rendered HTML in a string
3. Return the method with the rendered HTML wrapped as a JSON
How do i call the Html Helper method from my controller method? Simply using the static class HtmlHelper does not work.
I have ascx partial view with html-layout like that
<%=Html.ActionLink<PersonController>(x => x.Publications(param1, param2, ... )) %>
My ascx is pretty big & I'd like to reuse it, changing controller/method in Html.ActionLink with another controller/method. Method of another controller has the same signature as PersonController.Publications. Whats best way how to make controller/method configurable for my layout.
I have a controller's action and view page that uses a master page.
The master page has the html title section like:
<title>this is the page's title</html>
How can I access this section from within my controller's action (preferably) or my action's view page?
Lets say I have a simple controller for ASP.NET MVC I want to test. I want to test that a controller action (Foo, in this case) simply returns a link to another action (Bar, in this case).How would you test TestController.Foo? (either the first or second link)
My implementation has the same link twice. One passes the url throw ViewData[]. This seems more testable to me, as I can check the ViewData collection returned from Foo(). Even this way though, I don't know how to validate the url itself without making dependencies on routing.The controller:
public class TestController : Controller
{
public ActionResult Foo()[code].....
I have a HTML table (grid). I want to pass the html table data to controller.(mvc 2.0)
View 2 RepliesI'm trying to add file upload functionality to a page. I've got a form that posts the selected file to a controller with a 'savefile' method. But if I don't add a get version of 'savefile' I'll get a 404 error. Here is the form code which is presented on the Index page:
[Code]....
And here is the controller code:
[Code]....
Intuitively I don't think I should need a GET version of SaveFile but if omit it I get a 404 error when the form posts. Why should I need a GET version of SaveFile when all I want is to post a form and save the file?
I have the Index action method calling a method that itself is an action method.
Example :
[Code]....
What to do in this case ?
I would like to store some business flags (like: isFavorite, isOnLive etc.) per an html table row that won't be visible to user.
In practice, I have a simple ADO.Net DataTable on my code-behind which is used as a data-source for a asp.Net GridView control.
This table contains some business flags on its 0th, 1st, 2nd columns.
I need to store those columns on the rendered HTML of the grid-view -so that I can reach them via JavaScript- but I do not want them to be visible.