我有一个名为checker的变量,除非有表单标记,否则一切正常。之后变量变为空?为什么?以及如何修复它?
@{
foreach (var f in l)
{
var theDate = f.date;
var timeFrom = f.timeFrom;
var timeUntil = f.timeUntil;
var id = f.id;
<div class="col-lg-offset-1"><b><u> Job Available</u></b><br /></div>
<div><b>@theDate.ToLongDateString()</b></div>
<div class="col-lg-offset-1"><b>@timeFrom.ToShortTimeString() - @timeUntil.ToShortTimeString()</b></div>
<br />
var checker = false;
foreach (var q in Model.Invitations)
{
if (q.CleanerId == Model.Cleaner.id)
{
checker = true;
<div>@checker</div>
}
}
<form action="/Authentication/TakeJob" method="post" role="form">
<input class="invited" data-invited="@checker" type="hidden" name="invited" value="@checker" />
<input type="hidden" name="JobId" value="@id" />
<input type="hidden" name="CleanerId" value="@Model.Cleaner.id" />
<button class="btn btn-success btn-lg acceptButton">I'll Take The Job</button>
</form>
}
}
答案 0 :(得分:0)
尝试并更改闭包的位置,您的示波器不需要如此宽,包括表格。
@{
var checker = false;
foreach (var q in Model.Invitations)
{
if (q.CleanerId == Model.Cleaner.id)
{
<div>@checker</div>
//here it works
}
}
}
<form action="/Authentication/TakeJob" method="post" role="form">
//here it is null
<input class="invited" data-invited="@this.checker" type="hidden" name="invited" value="@this.checker" />
<input type="hidden" name="JobId" value="@id" />
<input type="hidden" name="CleanerId" value="@Model.Cleaner.id" />
<button class="btn btn-success btn-lg acceptButton">I'll Take The Job</button>
</form>