English 中文(简体)
JQuery/MVC Search Issue
原标题:

I have inherited a piece of work where the entry screen shows a summary of 20 calculated variables. E.g. Var A (250), Var B (79).

Clicking on any of these links takes the user to a view with a list of fields - all 20 use the same controller but with a different GET for each with a different LINQ to SQL statement - providing the view with different data for each.

This works as expected. However, I have to add a JQuery search for this view. Normally I would spit the view so that the top had a search box and the bottom had a partial with the results.

I would then use JQuery to call another get method that had the original LINQ method in it and add the search text the user entered.

Are you still with me? :)

Is there a more elegant way of doing this?

My way, I would have to maybe pass in the variable type and have a huge switch statement to call the correct LINQ and return the correct model pback to the partial.

I was thinking, maybe I should pass JSON back from the JQuery, filter it in the controller and pass it back to the partial but not sure how to go about it or even if it s possible.

问题回答

I hope I understand this correctly: you want a jQuery search box to get information from the database and load it into the view, right?

You can easily use jQuery to call actions in your controller, and then load the results onto the current page asynchronously. Its pretty straightforward.

 $( #DIVYOUWANTTOLOADINTO ).empty();
 $( #DIVYOUWANTTOLOADINTO ).load( @Url.Action("CONTROLLERACTION","CONTROLLER")/  + JSVALUETOPASS, function() { //callback function });

Without seeing any code, I will suggest removing partial views from the equation and just getting a controller to return your result based on the variable you are sending in. Once you have that working you can deal with the aesthetics.

public JsonResult MyAction(int myVar)
{
   var result;

   switch (myVar) 
   {
       case X:
          {
              result = from f in foo.bar select f; 
              break;             
          }
       ...
   }

   return Json(new { Result = result });
}




相关问题
WebForms and ASP.NET MVC co-existence

I am trying to make a WebForms project and ASP.NET MVC per this question. One of the things I ve done to make that happen is that I added a namespaces node to the WebForms web.config: <pages ...

Post back complex object from client side

I m using ASP.NET MVC and Entity Framework. I m going to pass a complex entity to the client side and allow the user to modify it, and post it back to the controller. But I don t know how to do that ...

Create an incremental placeholder in NHaml

What I want to reach is a way to add a script and style placeholder in my master. They will include my initial site.css and jquery.js files. Each haml page or partial can then add their own required ...

asp.net mvc automapper parsing

let s say we have something like this public class Person { public string Name {get; set;} public Country Country {get; set;} } public class PersonViewModel { public Person Person {get; ...

structureMap mocks stub help

I have an BLL that does validation on user input then inserts a parent(PorEO) and then inserts children(PorBoxEO). So there are two calls to the same InsertJCDC. One like this=>InsertJCDC(fakePor)...

ASP.NET MVC: How should it work with subversion?

So, I have an asp.net mvc app that is being worked on by multiple developers in differing capacities. This is our first time working on a mvc app and my first time working with .NET. Our app does not ...

System.Web.Mvc.Controller Initialize

i have the following base controller... public class BaseController : Controller { protected override void Initialize(System.Web.Routing.RequestContext requestContext) { if (...

热门标签