如何将Radiobutton的选定值发送到控制器 [英] How Do I Send The Selected Values Of Radiobutton To The Controller

查看:106
本文介绍了如何将Radiobutton的选定值发送到控制器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的观点





@using(Html.BeginForm(updateFeedback,调查问卷,FormMethod.Post))

{

for(int i = 0; i< Model.Count(); i ++)

{

Q @ Html.DisplayFor(item => item [i] .QuestionSeq)。 @ Html.DisplayFor(item => item [i] .Question)



var model = Model [i];



if(model.AnsType.Equals(Scale2))

{

< label> @ Html.RadioButton(Question+ model .QuestionSeq,1)好多了< / label>

< label> @ Html.RadioButton(问题+ model.QuestionSeq,2)更好< / label>

< label> @ Html.RadioButton(Question+ model.QuestionSeq,3)关于相同< / label>

< label> @ Html.RadioButton(问题+模型。 QuestionSeq,4)更糟糕< / label>

< label> @ Html.RadioButton(Question+ model.QuestionSeq,5)更糟糕< / label>



}

if(model.AnsType.Equals(Scale6))

{

& lt ; label& gt; @ Html.RadioButton(Question+ model.QuestionSeq,1)非常可能& lt; / label& gt;

& lt; label& gt; @ Html.Radio按钮(问题+ model.QuestionSeq,2)可能& lt; / label& gt;

& lt; label& gt; @ Html.RadioButton(Question+ model.QuestionSeq, 3)Neutral& lt; / label& gt;

& lt; label& gt; @ Html.RadioButton(Question+ model.QuestionSeq,4)不太可能& lt; / label& gt ;

& lt; label& gt; @ Html.RadioButton(Question+ model.QuestionSeq,5)极不可能& lt; / label& gt;



}

}

& lt; input type =submitvalue =Submit/& gt;

}



RadioButton的值在控制器中为空。我理解语法应该是 @ html.RadiobuttonFor 但是我无法在当前上下文中构建它。

帮助将不胜感激。

在此先感谢。

Here is my View


@using (Html.BeginForm("updateFeedback", "Questionnaire", FormMethod.Post))
{
for (int i = 0; i< Model.Count(); i++)
{
Q @Html.DisplayFor(item => item[i].QuestionSeq). @Html.DisplayFor(item => item[i].Question)

var model = Model[i];

if (model.AnsType.Equals("Scale2"))
{
<label>@Html.RadioButton("Question" + model.QuestionSeq, 1)Much Better</label>
<label>@Html.RadioButton("Question" + model.QuestionSeq, 2)Better</label>
<label>@Html.RadioButton("Question" + model.QuestionSeq, 3)About the same</label>
<label>@Html.RadioButton("Question" + model.QuestionSeq, 4)Worse</label>
<label>@Html.RadioButton("Question" + model.QuestionSeq, 5)Much Worse</label>

}
if (model.AnsType.Equals("Scale6"))
{
&lt;label&gt;@Html.RadioButton("Question" + model.QuestionSeq, 1)Very Likely&lt;/label&gt;
&lt;label&gt;@Html.RadioButton("Question" + model.QuestionSeq, 2)Likely&lt;/label&gt;
&lt;label&gt;@Html.RadioButton("Question" + model.QuestionSeq, 3)Neutral&lt;/label&gt;
&lt;label&gt;@Html.RadioButton("Question" + model.QuestionSeq, 4)Unlikely&lt;/label&gt;
&lt;label&gt;@Html.RadioButton("Question" + model.QuestionSeq, 5)Very Unlikely&lt;/label&gt;

}
}
&lt;input type="submit" value="Submit" /&gt;
}

The values for the RadioButton is coming as null in the controller. I understand the syntax should be @html.RadiobuttonFor but i am unable to frame it in the current context.
Help will be appreciated.
Thanks in advance.

推荐答案

我遇到了同样的情况,然后在逻辑下面实现。希望它对你有用



[HttpPost]

public ActionResult InterviewQuetionsAns(FormCollection FC)

{

InterviewDetails interviewdetails = new InterviewDetails();

int val;

foreach(FC.Keys中的字符串键)

{

interviewdetails.InterviewID =(int)Session [Id];

if(key.Contains(QIDIdR))

{

interviewdetails.QID = Int32.TryParse( key.Replace(QIDIdR,)。Trim(),out val)? val:0;

interviewdetails.AnsID = Convert.ToInt32(FC [key]);

interviewdetails.AnsDesc =0;



obj.InterviewDetails.Add(interviewdetails);

obj.SaveChanges();

}

else if (key.Contains(QIDIdT))

{

interviewdetails.QID = Int32.TryParse(key.Replace(QIDIdT,)。Trim() ,out val)? val:0;

interviewdetails.AnsID = 0;

interviewdetails.AnsDesc = FC [key];



obj.InterviewDetails.Add(interviewdetails);

obj.SaveChanges();

}



}



InterviewHDR interviewHDR = obj.InterviewHDR.First(v => v.InterviewID ==(int)Session [Id]);

interviewHDR.InterviewEndDate = DateTime.Now;

obj.SaveChanges();



返回RedirectToAction(ThankYou);

}
I have came across same scenario then implement below logic.Hope it will work for you

[HttpPost]
public ActionResult InterviewQuetionsAns(FormCollection FC)
{
InterviewDetails interviewdetails = new InterviewDetails();
int val;
foreach (string key in FC.Keys)
{
interviewdetails.InterviewID = (int)Session["Id"];
if (key.Contains("QIDIdR"))
{
interviewdetails.QID = Int32.TryParse(key.Replace("QIDIdR", "").Trim(), out val) ? val : 0;
interviewdetails.AnsID = Convert.ToInt32(FC[key]);
interviewdetails.AnsDesc = "0";

obj.InterviewDetails.Add(interviewdetails);
obj.SaveChanges();
}
else if (key.Contains("QIDIdT"))
{
interviewdetails.QID = Int32.TryParse(key.Replace("QIDIdT", "").Trim(), out val) ? val : 0;
interviewdetails.AnsID = 0;
interviewdetails.AnsDesc = FC[key];

obj.InterviewDetails.Add(interviewdetails);
obj.SaveChanges();
}

}

InterviewHDR interviewHDR = obj.InterviewHDR.First(v => v.InterviewID == (int)Session["Id"]);
interviewHDR.InterviewEndDate = DateTime.Now;
obj.SaveChanges();

return RedirectToAction("ThankYou");
}


这篇关于如何将Radiobutton的选定值发送到控制器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆