小菜写了一段jquery没有达到预想的结果,烦请高手帮忙
小编的项目里有个需求,当class为test的文本为“Error”的时候,父元素的同辈元素“p_info”的颜色为红色,按照需求我写了以下代码,可是并没有达到预想的结果,不知道哪里错了,烦请高手帮忙。
jquery javascript
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>test</title>
<style type="text/css">
<!--
.p_info { width:100px; height:30px; background:#396; }
-->
</style>
<script type="text/javascript" src="http://www.csdn.net/js/jquery-1.4.2.min.js"></script>
<script type="text/javascript">
$(function(){
var $test = $(".test").text();
if($test == "Error"){
$this.parent().siblings(".p_info").css("background","#000");
}
});
</script>
</head>
<body>
<div class="post">
<div class="post_info">
<div class="p_info"></div>
<div class="p_test">
<div class="test">Success</div>
</div>
</div>
</div>
<div class="post">
<div class="post_info">
<div class="p_info"></div>
<div class="p_test">
<div class="test">Error</div>
</div>
</div>
</div>
</body>
</html>
$(function(){
var test = $(".test").text();
alert(test);
if(test == "Error"){
$(".test").parent().siblings(".p_info").css("background","#000");
}
});
$(document).ready(function(){
$(".test:contains('Error')").parent().siblings(".p_info").css("background-color","#FF0000");
});