2012-02-15 20 views

回答

1

是和否。部分只能通過ajax加載(初始頁面加載後),所以不使用ajax就不可能進行局部頁面刷新。但是,您可以將所選的單選按鈕(通過JavaScript)輸入到控制器動作,然後在控制器內部確定哪個單選按鈕已被選中。這將只是選擇適當視圖的情況。

正如我所說,你不能在沒有ajax的情況下進行部分路由,所以答案是否定的。另外,爲了在提交中使用單選按鈕,您仍然必須使用javascript,在這種情況下,ajax解決方案可能值得考慮。

[編輯]與尊重的Splash-X,這裏的隱藏的div場景的快速工作起來:

@*use either @Html.RenderPartial() or @Html.RenderAction() as required*@ 

<div id="developerDiv" style="display: none"> 
    This is the developer stuff, in reality, 
    this would be populated as such @*@Html.RenderPartial("DeveloperPartial")*@ 
</div> 
<div id="testerDiv" style="display: none"> 
    And here we have the testers, again, 
    this would be populated as such @*@Html.RenderPartial("TestersPartial")*@ 
</div> 
<div> 
    Developer :@Html.RadioButton("team", "developer", new { onclick = "showResult(this)"}) 
    Tester :@Html.RadioButton("team", "tester", new { onclick = "showResult(this)"}) 
</div> 
<div id="partialContainer"></div> 

<script type="text/javascript"> 
    function showResult(radio) { 
     var selected = radio.value; 
     if (selected == "developer") 
      document.getElementById("partialContainer").innerHTML 
       = document.getElementById("developerDiv").innerHTML; 
     else if (selected == "tester") 
      document.getElementById("partialContainer").innerHTML 
       = document.getElementById("testerDiv").innerHTML; 
    } 
</script> 

享受..需要

+0

對不起,我的意思是沒有Jquery – Findings 2012-02-15 19:52:32

+0

ahh -ok,這有點不同,答案保持不變:)。你可以在單選按鈕onClick事件上使用javascript。因爲現在jquery似乎無處不在,所以沒有任何「真實」的例子可以處理。但這可能會給出線索:http://www.codeave.com/javascript/code.asp?u_log=7048 – 2012-02-15 19:54:17

+2

這不完全正確。通過使用Html Helpers for Html.Partial和Html.RenderPatial,可以將任何視圖呈現爲另一個視圖的一部分。您可以在頁面上包含兩個部分視圖,這兩個視圖都位於隱藏的容器(如div)中,並且根據所選值可以切換局部視圖的可見性。 – 2012-02-15 19:54:31

相關問題