gpt4 book ai didi

asp.net-mvc - CheckBoxFor 生成的奇怪输入名称

转载 作者:行者123 更新时间:2023-12-02 01:41:32 26 4
gpt4 key购买 nike

问题是,由于某些奇怪的原因,当我使用 CheckBoxFor 时,我得到一个复选框,但 ID 中有“CS___8__locals1”。不知道这是从哪里来的,也不知道为什么会发生。

有什么想法吗?见下文:

<input class="checkbox" id="ProductPlans_0__CS___8__locals1_plans_4__IsSelected" name="ProductPlans[0].CS$&lt;>8__locals1.plans[4].IsSelected" type="checkbox" value="true" />
<小时/>

我的模型是单个对象(它实际上是对象集合的一部分,但这并不重要。这是我的编辑器模板(省略了 @model 声明):

<tr> 
<td>
<label class="checkbox">
@Html.CheckBoxFor(x => Model.IsSelected, new { @class = "checkbox" })
<strong>@Model.MarketingLabel</strong>
@Html.Raw(@Model.DisplayName)
</label>
</td>
<td>
<span data-planid="@Model.Id">@Model.Premium.ToString("C")</span>
</td>
<td>
<a href="@Model.SBCUrl">Explain</a>
</td>
@Html.HiddenFor(x => Model.Id)
</tr>

最佳答案

我知道这是一篇旧文章,但也许​​会对其他人有所帮助。因此,就我而言,我遇到了同样的问题,经过几次尝试和错误后问题得到解决,我们发现错误本身就是 for 循环。

我们的模型是这样的:

for (int i = 0; i < PatiosCobro.Count; i++)
{
<div class="col-md-4 col-sm-4 col-xs-12">
<div class="input-group input-group">
<div class="form-line">
@Html.TextBoxFor(model => PatiosCobro[i].Valor, new { htmlAttributes = new { @class = "form-control" } })
</div>
@Html.HiddenFor(model => PatiosCobro[i].CobroId)
@Html.NameFor(model => PatiosCobro[i].Valor)
</div>
</div>
}

这将抛出“CS___8__locals1_ETC”

对我们有用的是取出局部变量 i 并在其他地方声明它。

举例:

int i = 0;
for (i = 0; i < PatiosCobro.Count; i++)
{
<div class="col-md-4 col-sm-4 col-xs-12">
<div class="input-group input-group">
<div class="form-line">
@Html.TextBoxFor(model => PatiosCobro[i].Valor, new { htmlAttributes = new { @class = "form-control" } })
</div>
@Html.HiddenFor(model => PatiosCobro[i].CobroId)
@Html.NameFor(model => PatiosCobro[i].Valor)
</div>
</div>
}

关于asp.net-mvc - CheckBoxFor 生成的奇怪输入名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34618711/

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