gpt4 book ai didi

c# - 选择 foreach 中的所有项目

转载 作者:太空宇宙 更新时间:2023-11-03 13:00:59 25 4
gpt4 key购买 nike

我有一个项目,您在列表中选择日期,然后报告项目的 x 小时数。它看起来像这样: enter image description here

但我想要的是,如果我想选择该月下的所有日期,我想在月份名称后添加一个复选框。但我目前不确定该怎么做,所以如果我能得到一些指导,我会很高兴。

这是打印出所有日期的 View :

<form class="form-horizontal">
<div class="portlet-body form">
<div class="form-group">
@if (ViewBag.MissingDays != null)
{
int i = 0;
var months = ((List<DateTime>)ViewBag.MissingDays).GroupBy(x => x.Month);
IEnumerable<IGrouping<int, DateTime>> groups = months as IList<IGrouping<int, DateTime>> ?? months.ToList();
foreach (var group in groups)
{
i++;
var month = CultureInfo.CreateSpecificCulture("sv-SE").DateTimeFormat.GetMonthName(group.Key);
if (groups.Count() > 1)
{
<div class="panel-group accordion" id="accordion1">
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion1" href="#collapse_@i">
@month
</a>
</h4>
</div>
<div id="collapse_@i" class="panel-collapse collapse">
<div class="panel-body">
<div class="col-md-12">
@foreach (var date in group)
{
var isoDate = date.ToString("yyMMdd");
var day = date.ToString("ddd", new CultureInfo("sv-SE")).Substring(0, 2);
<label style="padding-left: 10px">
<input type="checkbox" id="isoDate" name="isoDate" value="@isoDate" />@day-@isoDate
</label>
}
</div>
</div>
</div>
</div>
</div>
}
else
{
<div class="col-md-12">
@foreach (var date in group)
{
var isoDate = date.ToString("yyMMdd");
var day = date.ToString("ddd", new CultureInfo("sv-SE")).Substring(0, 2);
<label style="padding-left: 10px">
<input type="checkbox" id="isoDate" name="isoDate" value="@isoDate" />@day-@isoDate
</label>
}
</div>
}
}
}
</div>
</div>

这是我现在如何选择日期的脚本。

    $(document).ready(function() {
$('input[name="isoDate"]').change(function() {
$("#date").val("");
$('input[name="isoDate"]').each(function() {
if (this.checked) {

$("#date").val($("#date").val() + " " + $(this).val());
}
});
});
});

最佳答案

你可以这样试试..

首先删除 id="isoDate" 因为 Id 应该是唯一的。并在 month 字段附近的 div 中添加一个复选框

<input type="checkbox" class="selectAll" name="all" />

现在添加一个 JQuery 点击处理程序

   $(".selectAll").on("click", function() {
if ($(this).is(':checked')) {
$(this).closest('.panel-default').find("input[name='isoDate']").prop('checked',true);
} else {
$(this).closest('.panel-default').find("input[name='isoDate']").prop('checked',false);
}
});

查看工作 FIDDLE

关于c# - 选择 foreach 中的所有项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32305970/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com