2012-10-16 68 views
1

创建子视图的视图我有一个控制器:如何在asp.net MVC 4

public ActionResult Index() 
    { 
     return View(); 
    } 
    public ActionResult Button1() 
    { 
     return View(); 
    } 

的MySite/myController的/呈现与3个按钮和一个div网站。 按钮重定向到: mysite的/控制器/ Button1的 mysite的/控制器/ BUTTON2 mysite的/控制器/ BUTTON3

我想,当用户点击Button1的它呈现的MySite/myController的/与公众的ActionResult Button1的内容( )在div中。

同样适用于botton 2和3.如果用户直接转到MySite/Controller/button2,它应该在起始div的ActionResult Button2中呈现索引。

有没有简单的方法来做到这一点?我是否需要做ajax来替换div的内容,或者我应该让按钮成为局部视图并将它们呈现在4页上。

如果它容易与AJAX,我希望作为页面不需要刷新,但只是在内容中加载。但我不确定如果用户直接转到MySite/Controller/button2,我会如何正确渲染页面。

回答

0

有迹象表明,在这里我看到了几个有效的选项:

  1. 让每个按钮加载新的页面,其上的内容。
  2. 将每个按钮内容作为PartialView包含在单个页面中,并使用javascript更改div内容而不使用AJAX。
  3. 请勿包含任何按钮内容,并通过AJAX加载它们。
  4. 包括第一个可见按钮的内容,并通过AJAX加载其他人(如果这些都是静态的内容,那么你可以设计你的脚本来存储值,所以每个人只需要加载一次。

就个人而言,我将尝试做1和2,3或4的组合(取决于用例)。这样,该网站的基本功能没有JavaScript,但你仍然可以从jQuery/AJAX的好处。