2012-05-06 6 views
2

У меня есть 2 веб-страницы Home.aspx и about.aspx, здесь им пытаются загрузить about.aspx таблицу страниц в всплывающем окне,найти ближайшее значение в JQuery

about.aspx Страница

<table> 
    <tr> 
    <td class="Uname">Chat Is Name</td> 
    </tr>  
    <tr> 
    <td id="UserMessage">abc</td> 
    </tr>   
    <tr> 
    <td> 
     <input type="button" id="bt_Send" 
      title="Click here to Send" value="Send" /> 
    </td> 
    </tr> 
</table> 
<div id="mbox"></div>  

Код:

$('#mbox').load('about.aspx #msg'); 
$("#bt_Send").live('click', function() {    
    var a = $(this).siblings('.Uname').attr('text'); 
    alert(a);   
}); 

здесь я не получаю значение этого элемента управления

ответ

6

Вы можете сделать это с помощью:

var a = $(this).closest('table').find('.Uname').text(); 
+0

код .not Уокинг .. – kaira

+0

@ user631704. У меня была опечатка. он должен быть «самым близким» – gdoron

+0

@ user631704. Вы перепроверили его? – gdoron

0

Мы не рекомендуется больше не использовать $.live. Вместо этого, вы должны использовать $.on метод:

$("#mbox") 
    .load("about.aspx #msg") 
    .bind("click", "#bt_Send", function(){ 
    var a = $(this).closest("table").find(".Uname").text(); 
    }); 
+0

Вместо этого вы должны присоединить событие к успешному обратному вызову функции 'load'. Я был слишком ленив, чтобы сделать это сам и попытаться получить соответствующие данные от OP, но я думаю, что ему вообще не нужно делегировать мероприятие. – gdoron

 Смежные вопросы

  • Нет связанных вопросов^_^