单击ajax.Action以重定向到新页面而不是更新

时间:2014-06-03 11:05:45

标签: ajax asp.net-mvc

我有一个动作方法ImportShow,它返回一个部分视图ImportShow,其中我有一些ajax.ActionLinks,点击后更新div'importpartupdate'(他们只是更新了div与新的ajax.actionLinks以及从Action返回的其他routevalues。

我的问题是 - 当没有更多关于从该局部视图返回的vuewModel GroupMenu属性的记录时,我想将用户重定向到新控制器'Product'并且它是索引操作。 所以我做了检查,它真的将我重定向到PropductController。问题是我设置了UpdateTargetId = "importPartUpdate",结果是我的整个nee产品页面只插入importPartUpdatediv。我该怎么解决这个问题 3

这是我的控制器

public virtual ActionResult ImportShow(String id, String menuID, string articlegroupID, int? counter)
        {



                GroupMenu p_GroupMenu = new GroupMenu();
                p_GroupMenu.LanguageName = p_country;



                p_GroupMenu.MenuHistory = p_GetMenuHistory.ToList();
                p_GroupMenu.MenuLeft = p_GetMenuLeft.ToList();

                if (p_GetMenuLeft.Count == 0)
                {
                    return RedirectToAction("Index","Product", new { id = id, menuID = menuID, articlegroupID = articlegroupID, counter = 0 });

                }
                else
                {
                    return PartialView("ImportShow", p_GroupMenu);
                }


            }

        }

这是我的部分视图

model  MvcBeaWeb.GroupMenu

<div class="importPartUpdate">
    <ul>
        @{
            if (Model != null)
            {
                foreach (MvcBeaDAL.WebServiceBeaMenu item in Model.MenuLeft)
                {

                  <li id="@item.ID">

                        @Ajax.ActionLink(@item.SpecialWord, "ImportShow", new { id = Model.LanguageName,menuID=@item.ID,counter=1},new AjaxOptions { UpdateTargetId = "importPartUpdate", HttpMethod = "GET", InsertionMode = InsertionMode.Replace })

                  </li> 
                }
            } 
        }
    </ul>
</div> 

0 个答案:

没有答案