【问题标题】:find closest value in jquery在jquery中找到最接近的值
【发布时间】:2012-05-15 02:23:32
【问题描述】:

我有 2 个网页 home.aspx 和 about.aspx ,这里我试图在弹出框中加载 about.aspx 页表,

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);        
});

这里我没有得到那个控件的价值

【问题讨论】:

    标签: jquery asp.net jquery-selectors dom-traversal


    【解决方案1】:

    您可以通过以下方式完成此操作:

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

    【讨论】:

    • @user631704。我有一个错字。应该是closest
    • @user631704。你复查了吗?
    【解决方案2】:

    鼓励我们不再使用$.live。相反,您应该使用$.on 方法:

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

    【讨论】:

    • 您应该在load 函数的成功回调中附加事件。我懒得自己动手,尝试从 OP 获取相关数据,但我认为他根本不需要委托事件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-01
    • 1970-01-01
    • 2022-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-22
    相关资源
    最近更新 更多