2012-05-29 72 views
0

这是一个MVC3应用程序。我有一个Telerik网格,当单击一行时,我想弹出一个telerik窗口。该窗口将填充部分视图。我的网格很好。这是窗口中的代码:使用局部视图填充telerik窗口MVC3

@(Html.Telerik().Window() 
    .Name("EditTaskWindow") 
    .Visible(false) 
    .Content(@<text><iframe id="ifrmEditTask" width="600" height="500" marginheight="0" marginwidth="0"></iframe></text>) 

) 

这是在打开的窗口中的javascript:

function WFTaskGrid_onRowSelect(e) { 
     var url = "@(Url.Content("~/WorkflowTask/Edit/"))" + "1/2/3"; 
     $('#ifrmEditTask').attr('src',url); 
     $('#EditTaskWindow').data('tWindow').center().open(); 
    } 

但是,当我点击我的网格一排窗口弹出,但我得到一个404不能找到 “WorkflowTask /编辑/ 1/2/3” 这里是我的控制器:

public ActionResult _Edit(string id, string sub, string log)   
     { 
      return PartialView(); 
     } 

我将此添加到Global.asax中:

routes.MapRoute(
    "EditTasks", // Route name 
    "{controller}/{action}/{id}/{sub}/{log}", // URL with parameters 
    new { controller = "WorkflowTask", action = "Edit", id = UrlParameter.Optional, sub = UrlParameter.Optional, log = UrlParameter.Optional } // Parameter defaults 
); 

仍然得到404.有谁知道为什么?由于

回答

1

你有和的ActionResult

public ActionResult _Edit(string id, string sub, string log)  

并且已指定为

routes.MapRoute(
    "EditTasks", // Route name 
    "{controller}/{action}/{id}/{sub}/{log}", // URL with parameters 
    new { controller = "WorkflowTask", action = "Edit", id = UrlParameter.Optional, sub = UrlParameter.Optional, log = UrlParameter.Optional } // Parameter defaults 
); 

路线看到的错误?

你的行动结果_Edit

,然后你必须

var url = "@(Url.Content("~/WorkflowTask/Edit/"))" + "1/2/3"; 

仍然下划线丢失

可能的补救办法与等植物学途径是增加一个动作名称之前把下划线像

[ActionName("Edit")] 
public ActionResult _Edit(string id, string sub, string log) 
+0

修复它。谢谢 – BoundForGlory

+0

很高兴帮助 –