【发布时间】:2013-09-14 10:42:53
【问题描述】:
Razor 语法相当新,但我在 Razor 视图上有一些 jQuery 代码,如下所示:-
@section Scripts {
<script type="text/javascript">
$(document).ready(function () {
console.log('test1');
var test = $('#4-10-documentation');
console.log(test);
$('#4-10-documentation').each(function () {
console.log('test2');
});
console.log('test3');
});
</script>
}
firebug 控制台输出:
test1
Object[]
test3
所以 jQuery 在直接指定时可以轻松找到第一个对象,但由于某种原因,.each 函数根本不会触发。有什么原因吗?
别担心,这里的代码是真实代码的简化版本,我使用的是类选择器而不是这里显示的 id 选择器。
注意:- 原来元素来自通过 ajax 加载的局部视图,因此 document.ready() 中不存在元素 id
感谢大家帮助我。
【问题讨论】:
-
$('#4-10-documentation').each--> 为什么?id必须是唯一的。 -
@TusharGupta OP 提到他没有在“真实”代码中使用 id。
-
如果您使用类选择器,那么这对我来说很好。它正在创建一个对象数组,这是预期的结果,对吧?
-
@Jeevan Jose - 写入控制台的对象来自第一个选择器(var test ...)
标签: jquery asp.net-mvc razor