兄弟html更新不能正常工作jquery

时间:2011-05-01 21:51:48

标签: jquery

我一直在尝试更改从php文件中收到的div的内容。我面临的问题是这个特殊的部分$(this).siblings(“div”)。html(“info”); 它没有更新内容。如果没有成功回调我错过了什么呢?

<script type="text/javascript">


$(function(){
$("button").click(function(){


var name =$(this).attr('name');
var info = 'test=' + name;
var div= name;

$.ajax({  
  type: "GET",  
  url: "yes.php",  
  data: info,  
  success: 

  function(data)

  {  
           $(this).siblings("div").html(data);  

        }  
    });        



  });
  });




</script>

<style type="text/css">
.max {
color: #00F;
height: 25px;
 }
 .recent {
background-color: #0F0;
width: 500px;
height: 24px;
 }

 div.min{
width: 200px;
height: 100px;
overflow: hidden;
background-color: #F00;
}
</style>


 <div>


 <div class="min">Whats up dude?aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
   </div>
  <button name='what'>Read More</button>
  </div>


    <br/>
   <div>

    <div class="min">Whats up dude?aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
   </div>
   <button name='jack'>Read More</button>

   </div>

2 个答案:

答案 0 :(得分:1)

ajax调用中的

this指向xhr对象,而不再指向$("button")。将它存储在ajax调用之前的var中,稍后再使用它:

$this = $(this);

以后:

$this.siblings("div").html(data);

答案 1 :(得分:0)

我不认为$(this)具有你在回调中所做的范围。请尝试使用显式选择器:

 $(".divClass").siblings("div").html(data);