我的span中有一个值,我想与C#变量进行比较,是否可能?如果是,那么如何?
我可以在Jquery变量中获取Html标记值,但仍然没有成功将它与Razor View中的C#变量值进行比较。
HTML Tag: <span style="visibility: hidden" id="category">"Some Value"</span>
C#Razor语法:
@foreach (var item in Model.InventoryViewModel.Items.Where(i => i.Category == "HTML Value"))
{
// Some Code
}
我试图将span中的值与C#变量匹配,请提供任何帮助建议:\ !!
答案 0 :(得分:1)
不知道你在做什么,但你可以在视图模型上使用变量或其他东西,甚至更好的属性。无论如何Razor代码在服务器上运行,HTML在客户端上,所以谈论在Razor中比较HTML值就像鸡和蛋的问题。
因此,您可以使用视图模型的值生成pan标记:
<span style="visibility: hidden" id="category">
@Model.SomeProperty
</span>
然后你比较:
@foreach (var item in Model.InventoryViewModel.Items.Where(i => i.Category == Model.SomeProperty))
{
// Some Code
}
但更好的方法是在控制器操作上执行此操作并直接过滤集合,以便您在视图中所要做的就是:
@foreach (var item in Model.InventoryViewModel.FilteredItems)
{
// Some Code
}
使用模板甚至更短:
@Html.EditorFor(x => x.InventoryViewModel.FilteredItems)