0

私は投票ページメカニズムの開発に取り組んでいます。ここに質問のリストがあり、各質問に対して 3 つのオプションがあります (ラジオ ボタンを使用しています)。ビューとコントローラーのメソッドを添付しました。DB に保存された値を正しく取得していますが、私の問題は、ラジオ ボタンが使用されている複数のオプションを選択できることです。質問に対して1つのオプションが選択されている場合、他のオプションは自動的に選択解除する必要があることを確認したいのですが、これは私には起こりません.

私の見解 :

 @using (Html.BeginForm())
 {   
        <div>
         @foreach (var a in ViewBag.Questions)
         {
             <h4>@a.Questions</h4>
             <div>
                @foreach (var b in Model)
                {
                   if (b.QuestionsID == a.id)
                   {                                  
                      @Html.RadioButton(b.AnswersOptions, 
                               new {Answerid= b.id, Questionid=a.id })                     
                      @b.AnswersOptions
                   }
                }
             </div>
         }

        </div>
        <br/>

        <div >
           <input type="submit" value="Vote Now!!" 
                onclick="return confirm('Are you sure you want to                                         
                submit your choices?');"/>
        </div>
 }

私のコントローラー:

    public ActionResult VotingResult_Post(FormCollection resultcollection)
    { 
        int resultcollectionCount = resultcollection.Count;

        if (resultcollectionCount == CountofQuestionsDisplayed)
        {
            for (int i = 0; i < resultcollectionCount; i++)
            {
                string SelectedIDArray = resultcollection[i];
                string SelectedAnswerIDValue = GetValue("Answerid", SelectedIDArray);                                                                                
                string SelectedQuestionID = GetValue("Questionid", SelectedIDArray);                 

                InsertUsersReponses(SelectedQuestionID, SelectedAnswerIDValue);                   
            }
        }

        List<Voting_Questions> QuesList = PopulateQuestions();
        ViewBag.Questions = QuesList;
        List<Voting_Answers> Answers = aobj.Voting_Answers.ToList();
        return View(Answers);
    }
4

1 に答える 1