我刚开始使用jQuery,然后请原谅我的noobish。 我试图做的是“引用一个包含在类中的对象”,但是有更多类具有相同的名称。 我怎样才能到达正确的对象并获得对它的引用,当唯一不同于其他一千多个对象的东西就是div中的文本。
在这种情况下,我试图只显示文字"这应该返回",这是在类&ng; ng-anyclass'下面。 之后,是否可以存储对该特定div的引用并更改它的文本?或任何其他属性?
这里是代码: 第1页 - 装载机:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
<script type="text/javascript">
jQuery(function($){
var s = $('#result').load('Page2.html .ng-anyclass .ng-anyclass .ng-anyclass');
});
</script>
</head>
<body>
<div id="result"></div>
<div>Other Stuff Here</div>
</body>
</html>
第2页 - 目标页面
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<div class="ng-anyclass">
<div class="ng-anyclass">
<div class="ng-anyclass">this should be returned</div>
</div>
<div class="ng-anyclass">
<div class="ng-anyclass">not this</div>
</div>
</div>
</body>
</html>
答案 0 :(得分:2)
您可以使用:eq(0)
:
jQuery(function($) {
$('#result').load('page2.html .ng-anyclass .ng-anyclass .ng-anyclass:eq(0)', function(){
var _this = $(this)
setTimeout(function(){
_this.find('.ng-anyclass').text('changed');
},1000);
});
});
答案 1 :(得分:1)
如果你想在某处写文字,可以使用CSS选择器,如下所示:
$('body .ng-anyclass .ng-anyclass:eq(0) .ng-anyclass').text('your text')
eq(0)它是第一个孩子的快捷方式,或者eq(1)是nth-child(2)例如
我希望它会对你有所帮助