在jquery中找到最接近的值

Posted

技术标签:

【中文标题】在jquery中找到最接近的值【英文标题】:find closest value in 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);        
);

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

【问题讨论】:

【参考方案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 获取相关数据,但我认为他根本不需要委托事件。

以上是关于在jquery中找到最接近的值的主要内容,如果未能解决你的问题,请参考以下文章

jQuery找到最接近的ID并删除其中一个类名

jQuery - 搜索或排序后最接近的 TD 值

在jQuery中获取最接近元素的形式

JQuery选择下拉列表中最接近的tr选择[重复]

Jquery - 在复选框单击时按类查找最接近的前一个 <tr>。复选框位于 <td> 内

使用 jQuery 从单击的元素中获取最接近的输入值