Javascript JQuery和ASP MVC出现双击错误

Javascript JQuery和ASP MVC出现双击错误,javascript,jquery,asp.net,asp.net-mvc,razor,Javascript,Jquery,Asp.net,Asp.net Mvc,Razor,早上好! 我的剃须刀中有一个复选框,当复选框被选中时,它会显示一个带有日期选择器的div。 我的错误是,当我双击复选框时,该复选框将显示带有日期选择器的div,而未选中该复选框时(执行与我所需相反的操作) 这是我的密码: <div class="form-group"> @Html.LabelFor(model => model.SupHUBZoneCertified, htmlAttributes: new { @class = "control-label co

早上好! 我的剃须刀中有一个复选框,当复选框被选中时,它会显示一个带有日期选择器的div。 我的错误是,当我双击复选框时,该复选框将显示带有日期选择器的div,而未选中该复选框时(执行与我所需相反的操作)

这是我的密码:

<div class="form-group">
      @Html.LabelFor(model => model.SupHUBZoneCertified, htmlAttributes: new { @class = "control-label col-md-4" })
      <div class="col-md-8">
           <div class="checkbox" id="cb1">
               <label>
                  @Html.EditorFor(model => model.SupHUBZoneCertified)
                  @Html.ValidationMessageFor(model => model.SupHUBZoneCertified, "HUB Zone Certified:")
               </label>
            </div>
        </div>
 </div>

 <div class="form-group" id="dateCb1" style="display:none">
      @Html.LabelFor(model => model.SupCategoryHUBZoneDate, htmlAttributes: new { @class = "control-label col-md-4" })
      <div class="col-md-8">
           @Html.EditorFor(model => model.SupCategoryHUBZoneDate, new { htmlAttributes = new { @class = "form-control datepicker" } })
           @Html.ValidationMessageFor(model => model.SupCategoryHUBZoneDate, "", new { @class = "text-danger" })
       </div>
  </div>


假设您使用的是jQuery UI日期选择器,我看不到

只有
show
hide
方法

因此,您应该修改您的代码:

$("#cb1").click(function () {
    var action = this.checked ? "show" : "hide";
    $("#dateCb1").datepicker(action);
    $("#dateCb1").toggle(this.checked);
});

谢谢大家,我发现了错误,所以基本上我不能使用#cb1作为复选框ID,因为我需要使用输入的ID。 输入的ID在ASP MVC中自行生成,并使用MVC模型中声明的名称

所以代码应该是

 $("#SupHUBZoneCertified").click(function () {
    $("#dateCb1").toggle(this.checked);
});
我使用“InternetExplorer中的Inspect元素”找到了输入类名


谢谢你,Vsevolod事实上我正在使用jQuery UI日期选择器,但我没有显示或隐藏日期选择器。我正在显示和隐藏一个带有标签和日期选择器的div。@CesarD啊哈,我看到了,试着将隐藏潜水和关闭日期选择器结合起来。我已经修改了我的答案谢谢你Vsevolod你的代码很好,我的也很好。如果我选中则显示div,如果我取消选中则不显示div,但是如果我双击“未选中时显示div”并在选中时隐藏div。
 $("#SupHUBZoneCertified").click(function () {
    $("#dateCb1").toggle(this.checked);
});