【问题标题】:asp.net mvc select change redirect to Actionasp.net mvc 选择更改重定向到操作
【发布时间】:2010-06-16 22:21:23
【问题描述】:

我正确地将动作名称从控制器传递到分页类,然后使用选择列表我想重定向到该动作。目前它正在附加到当前 url。我想要使用下面的选择列表重定向到控制器操作 manageUser 的正确方法

我们应该在 Model.COntroller 中有什么。 ControllerName/ActionName/ 或只是 ActionName

 <select id="paging" onchange="location.href='<%= Model.Controller %>'+this.value">

     <% for (int i = 1; i <= Model.TotalPages; i++)
      {  %>
         <option id=<%=i %>><%=i %></option>
     <% } %>
    </select>


public class PaginatedList<T> : List<T>
{

    public string Controller { get; private set; }

    public PaginatedList(IQueryable<T> source, int pageIndex, int pageSize,string Cont)
    {
        Controller = Cont;                   // here is the controller 

    }
  }

Controller
    public ActionResult ManageUser(int? page)
    {
        const int pageSize = 5;
        var AllUser = UserRepository.GetAllUser();
        var paginatedUsers = new PaginatedList<Users>(AllUser, page ?? 1, pageSize,"ManageUser/Page/");

        return View(paginatedUsers);
    }

【问题讨论】:

    标签: asp.net-mvc asp.net-mvc-2


    【解决方案1】:

    我可能会将 select 的值设置为您要重定向到的 url。这样你仍然可以使用内置的帮助器来生成你的 url。像这样的:

    <select id="paging" onchange="location.href=this.value">
     <% for (int i = 1; i <= Model.TotalPages; i++)
      {  %>
         <option value="<%=Url.Action("ActionName", "ControllerName", new { page = i })%>"><%=i %></option>
     <% } %>
    </select>
    

    【讨论】:

      猜你喜欢
      • 2014-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-23
      相关资源
      最近更新 更多