【发布时间】:2014-12-11 16:16:55
【问题描述】:
我有一个主要观点,假设有以下内容:
<div id='test'>Some Text</div>
<div id='placeholder'></div>
然后使用 ajax 我将“占位符”的内容替换为如下所示的部分视图:
<div id='ajaxContent'>
// new content
</div>
<script>
$(document).ready(function() {
console.log($('#test').text());
$('#test').css('color','red');
});
</script>
所以在我的脚本中,我试图将 div 'test' 中的文本颜色更改为红色,但我在控制台中不断收到“未定义”。如何从通过ajax进入主视图的部分视图访问主视图中的测试div?
如果它们最终出现在同一个页面上,那么 html 元素是否应该能够相互看到?
【问题讨论】:
-
在将内容放入主视图的 AJAX 调用的完成或成功回调中运行脚本。
-
@MarcellFülöp 我不想这样做,我有我的理由,我需要在部分内部这样做
-
使用 document.ready() 可能是问题 - 我不确定在主文档已经准备好后添加新内容时是否会触发。您应该能够简单地包含脚本,而无需将其包装在 document.ready() 中。
-
-
好吧,估计不是这样。您肯定没有其他 ID 为“test”的元素吗?您发布的片段当然看起来应该可以工作。
标签: javascript jquery ajax