2011-10-26 49 views
1

我是MVC 3的新手,並且在使用剃刀形式時遇到了一些困難。該表單用於測試。它有大約100個問題。這些問題只有2個可能的答案。我有一個包含問題答案的模型。每個答案有3個可能的設置。 1代表答案1. 2代表答案2.如果它從未被回答,則爲0。問題是,當我發佈表單時,即使沒有提供答案,答案也會被設置爲1。模型中的MVC 3剃鬚刀表格設置值無用戶交互

下面是代碼:

頂部形式的

@model CSO.Legacy.Web.MBTIMAssessment 

<div id ="MBTIMAsessment"> 

@using (Html.BeginForm("SaveMBTIM", "Assessment")) 
{ 

單選按鈕

@Html.RadioButtonFor(m => m.Answer1, "1") 
@Html.RadioButtonFor(m => m.Answer1, "2") 
@Html.RadioButtonFor(m => m.Answer2, "1") 
@Html.RadioButtonFor(m => m.Answer2, "2") 

從模型提交按鈕

<a href="javascript:;" class="btn-submit-for-review btn" onclick="$(this).closest('form').submit();"></a> 
public string Answer1 { get; set ; } 
public string Answer2 { get; set ; } 
public string Answer3 { get; set; } 

從控制器

public void SaveMBTIM(MBTIMAssessment assessment) 
{ 
    assessment.SubmitAssessment(); 
} 

在此先感謝

Wizy

回答

0

你可以添加一個 「不選擇」 選項:

@Html.RadioButtonFor(m => m.Answer1, "no selection", new { Checked = "checked" }) 
@Html.RadioButtonFor(m => m.Answer1, "1") 
@Html.RadioButtonFor(m => m.Answer1, "2") 

這不是一個真正的MVC的事情:

<input type="radio" name="group" value="a" /> 
<input type="radio" name="group" value="b" /> 

$('input[type=radio]').val(): // "a" 

即使沒有選擇。