在我的MVC索引页面中,对于viewmodel中的每个元素,它通过局部视图呈现。
然后我需要在每个部分视图上运行一个小脚本,并尝试使用jQuery.Each()
但是,我似乎无法进行迭代,因为$get
始终返回1,而不是$get
中的实际元素数。
Index.cshtml
@model IEnumerable<ViewModels.DummyVM>
@{
ViewBag.Title = "index";
}
<h2>index</h2>
<div>
@for (int i = 1; i <= 10; i++)
{
@Html.Partial("pv", i);
}
</div>
@section Scripts
{
<script type="text/javascript">
$(function () {
alert($("#LogEntry").length);
})
</script>
}
PV.cshtml
@model int
<div id="LogEntry">
Log Entry : @(Model)
</div>
对于上面的简化测试,一旦页面有 .ready(),然后遍历 并转储到控制台,但我只得到{{1} }
答案 0 :(得分:1)
id
在相同的文档使用类中应该是唯一的:
@model int
<div class="LogEntry">
Log Entry : @(Model)
</div>
然后在JS代码中使用类选择器.
:
$(function () {
alert($(".LogEntry").length);
})
如果您无法修改PV.cshtml
页面,可以使用:
$(function () {
alert($("[id='LogEntry']").length);
})
希望这有帮助。