Jquery 预选的不同页面单选按钮

Jquery 预选的不同页面单选按钮,jquery,html,asp.net-mvc,radio-group,Jquery,Html,Asp.net Mvc,Radio Group,有两页;第一页第1节和第二页第2节 问题是,当选择第1节单选按钮时,即checked=“checked”并继续到第2页/第2节时,第一个单选按钮被预选?!请注意checked=“checked” 名称相同,因为它是通过RadioButton或通过视图模型填充的动态问卷 第1页/第1节单选按钮组: Yes <input id="11" name="VIQuestions[1].Answer" type="radio" value="0"> No <input id="12" n

有两页;第一页第1节和第二页第2节

问题是,当选择第1节单选按钮时,即
checked=“checked”
并继续到第2页/第2节时,第一个单选按钮被预选?!请注意
checked=“checked”

名称相同,因为它是通过RadioButton或通过视图模型填充的动态问卷

第1页/第1节单选按钮组:

Yes <input id="11" name="VIQuestions[1].Answer" type="radio" value="0">
No  <input id="12" name="VIQuestions[1].Answer" type="radio" value="1">
N/A <input id="13" name="VIQuestions[1].Answer" type="radio" value="2">
Yes <input id="71" name="VIQuestions[1].Answer" type="radio" value="0">
No  <input id="81" name="VIQuestions[1].Answer" type="radio" value="1">
N/A <input id="91" name="VIQuestions[1].Answer" type="radio" value="2">
是
不
不适用
第2页/第2节单选按钮组:

Yes <input id="11" name="VIQuestions[1].Answer" type="radio" value="0">
No  <input id="12" name="VIQuestions[1].Answer" type="radio" value="1">
N/A <input id="13" name="VIQuestions[1].Answer" type="radio" value="2">
Yes <input id="71" name="VIQuestions[1].Answer" type="radio" value="0">
No  <input id="81" name="VIQuestions[1].Answer" type="radio" value="1">
N/A <input id="91" name="VIQuestions[1].Answer" type="radio" value="2">
是
不
不适用
我不想强制单选按钮在页面加载时不选择任何内容,因为当用户提交页面并发现错误时,我希望浏览器记住用户的选择,因此一揽子选择重置将不起作用

我正在寻找一种方法,以便在提交第一页时,没有发现错误,然后加载第二页;然后,我想擦除第1页中所做选择的任何历史记录

另外,我认为是单选按钮的名称及其选择存储在浏览器中导致了这种情况,但我不确定这可能是MVC的问题

编辑:为了完整起见,这里是输出单选按钮的MVC视图代码

for (int j = 0; j < Model.VIQuestions.Count; j++)
{
    string questionId = Model.VIQuestions[j].VIQuestion_Id.ToString();

    <label><span>Yes</span>@Html.RadioButtonFor(m => m.VIQuestions[j].Answer, 1, new { id = questionId + 1 })</label>
    <label>&nbsp;&nbsp;<span>No</span>@Html.RadioButtonFor(m => m.VIQuestions[j].Answer, 2, new { id = questionId + 2 })</label>
    <label>&nbsp;&nbsp;<span>N\A</span>@Html.RadioButtonFor(m => m.VIQuestions[j].Answer, 3, new { id = questionId + 3 })</label>
}
for(int j=0;jm.VIQuestions[j]。答案,1,新的{id=questionId+1})
No@Html.RadioButtonFor(m=>m.VIQuestions[j]。答案,2,新的{id=questionId+2})
N\A@Html.RadioButtonFor(m=>m.VIQuestions[j]。答案,3,新的{id=questionId+3})
}

如果您使用表单帖子在问卷页面之间移动,那么您将遇到一个功能,其中模型状态已经预先填充了表单值。在验证失败等情况下,您需要显示表单

如果您对表单值感到满意并希望用户继续,那么

this.ModelState.Clear();
重新显示窗体之前,或使用

this.RedirectToAction( ...

并将每个问题作为一个单独的请求。

如果您使用表单帖子在问卷页面之间移动,那么您将遇到一个功能,其中模型状态已经预先填充了表单值。在验证失败等情况下,您需要显示表单

如果您对表单值感到满意并希望用户继续,那么

this.ModelState.Clear();
重新显示窗体之前,或使用

this.RedirectToAction( ...

并将每个问题作为一个单独的请求。

@Rorymcrossan糟糕,我以为我已经做了。你需要展示你的相关代码。您是否正在使用
@Html.radiobutton()
生成单选按钮?(如果存在,则使用来自
ModelState
的值)。您发布到的方法是什么?您在该方法中做什么-重定向(正确)或返回视图(不正确)?而且你的单选按钮甚至没有意义-每个按钮都用于不同的属性,因此你可以选择所有按钮(并且不能取消选择任何按钮)@StephenMuecke heya,我确实解释过单选按钮是使用RadioButtonFor创建的输出。。。这是一个重定向。。。我知道,当所有名称都不同时,它们确实作为一个组工作,这似乎很奇怪,但它们确实是,您不能全部选择它们,它们是一个组,在回发时,它们是使用viewmodel读取的(因为它们是使用RadioButton绑定到它的)他们是您编辑中的一个组-问题顶部的原始代码不是一个组,无法工作:)@StephenMuecke是的,对不起,我刚刚意识到我的错误(并更正了,他们都有相同的名称),对不起@RoryMcCrossan糟糕透了,我以为我已经做到了。你需要展示你的相关代码。您是否正在使用
@Html.radiobutton()
生成单选按钮?(如果存在,则使用来自
ModelState
的值)。您发布到的方法是什么?您在该方法中做什么-重定向(正确)或返回视图(不正确)?而且你的单选按钮甚至没有意义-每个按钮都用于不同的属性,因此你可以选择所有按钮(并且不能取消选择任何按钮)@StephenMuecke heya,我确实解释过单选按钮是使用RadioButtonFor创建的输出。。。这是一个重定向。。。我知道,当所有名称都不同时,它们确实作为一个组工作,这似乎很奇怪,但它们确实是,您不能全部选择它们,它们是一个组,在回发时,它们是使用viewmodel读取的(因为它们是使用RadioButton绑定到它的)他们是您编辑中的一个组-问题顶部的原始代码不是一个组,无法工作:)@StephenMuecke是的,对不起,我刚刚意识到我的错误(并更正了,他们都有相同的名称),对不起!