2012-09-14 41 views
2

我是RAZOR的新手,我想在用戶單擊RadioButton時觸發一個事件。RAZOR當用戶點擊組件時如何觸發事件

理想情況下,它應該在用戶單擊RadioButton之後動態顯示選定的值。

問題:

  1. 如何獲得所選擇的值

  2. 如何當用戶點擊一個單選按鈕來觸發一個事件。

    @{ 
        Layout = "~/_SiteLayout.cshtml"; 
        Page.Title = "Contact"; 
    } 
    
    <div> 
        <table> 
        <tr> 
         <td> 
         @Html.RadioButton("Gender", "Male", true) Male 
         </td> 
         <td> 
         @Html.RadioButton("Gender", "Female", false) Female 
         </td> 
        </tr> 
    </table> 
         @Html.Label(Request["Gender"] == null ? "No Selection" : Request["Gender"]) 
    

+0

你好?任何人? – Franva

回答

2

你不能用剃刀做到這一點,你所能做的就是像這樣創建單選按鈕,使用jQuery觸發任何動作。

<input type="radio" name="sex" value="male" /> Male <br /> 
<input type="radio" name="sex" value="female" /> Female 
頁面就像

你可以添加腳本(假設你可以使用jQuery)

<script type="text/javascript"> 
$(function() { 
    $(':radio[name="sex"]').change(function() { 
     $.ajax({ 
      url: 'sex', 
      type: 'POST', 
      data: { sex: $('radio[name="sex"]').val() }, 
      success: function (xhr_data) { 
       alert(xhr_data.someValue); 
      } 
     }); 
    }); 
}); 

假設你在相同的控制器所具有的操作方法一個產生你的看法:

public class YourController : Controller 
{ 
    public ActionResult sex(string sex) 
    { 
     // do something awesome 
     return Json(new { someValue = "testing!" }); 
    } 
} 
+0

thx,但我想傾向新事物,這就是爲什麼我發佈此線程。你能否給我提供一些Razor代碼? – Franva

1

剃刀已經放棄了事件驅動模型,可以使用表單,當你可以提交表單時,你可以在控制器中得到結果

+0

這就是我正在尋找的答案。請解釋你的答案,我對RAZOR完全陌生,所以我很感激你能否給我提供一段代碼。我真的需要它。因爲我搜索了幾個小時,找不到任何相關的東西。 – Franva

+0

順便說一句,我沒有使用MVC的RAZOR。我只使用RAZOR。那麼是否有任何方法只使用RAZOR來尋找事件驅動程序模型的替代方案?許多thx – Franva