回发后如何保持单选按钮的填充

时间:2020-06-08 08:33:08

标签: c# jquery asp.net asp.net-mvc

我有一个页面,其中包含基于单选按钮选择显示和隐藏的动态行。还进行了验证,以确保每个字段(显示的)都已填充并且具有有效值。当用户提交页面时,它会验证字段并回发,并且在存储文本框值的同时,所有单选按钮都被取消选择,并且动态行都被隐藏。 我想知道回发后如何保持单选按钮和可见/隐藏字段的选择。

<div class="form-group">
    <label asp-for="HaveYouEnteredTheProperty">Have you entered the property?</label>
    <div asp-for="HaveYouEnteredTheProperty" class="btn-group btn-group-toggle" data-toggle="buttons" style="width:100%">
        <label style="width:50%" class="btn btn-success">
            <input type="radio" name="VisitDetailsRadio" id="propYes" value="Yes"/> Yes 
        </label>
        <label style="width:50%" class="btn btn-danger">
            <input type="radio" name="VisitDetailsRadio" id="propNo" value="No" /> No 
        </label>
    </div>
    <span asp-validation-for="HaveYouEnteredTheProperty" class="text-danger"></span>
</div>

这是我在cshtml页面上的单选按钮之一

 $("input[name=VisitDetailsRadio]").change(function () {
    if ($(this).val() == "No") {
        $(".VisitDetailsExpandedYes").hide();
        $(".VisitDetailsExpandedNo").show();
        $(".EnteredProperty").hide();
    }
    else {
        $(".VisitDetailsExpandedYes").show();
        $(".VisitDetailsExpandedNo").hide();
        $(".EnteredProperty").show();
         }
});

这是一个基于单选按钮选择显示和隐藏字段的jQuery

if (results.IsValid)
{
    _context.Results.Add(model);
    _context.SaveChanges();

    ModelState.Clear();
    return View();
}

else
{

    results.AddToModelState(ModelState, null);
    return View(model);
}

这是按下表单末尾的“提交”按钮后的验证。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

总的来说,您需要执行以下操作:

  1. 对CREATE视图的处理与对UPDATE视图的处理相同。您应该为应该单击的所有单选按钮添加Razor语法。
  2. 您应该使用Razor或Javascript来确定基于选定的单选按钮显示或隐藏哪些动态内容。
相关问题