jquery根据值查找表中的相邻span

时间:2013-06-14 20:28:49

标签: jquery asp.net

当我的页面加载时,我将使用asp:DataGrid命中数据库并在我的页面中填充一些隐藏数据。当用户从下拉列表中选择一个值时,我想使用jquery在表中找到匹配的Value并返回兄弟Rate rate的值。

因此,例如,如果选定的下拉值为10,则返回80.00。如果选择30,则返回45.00。以下是生成的html示例。

<table id="PercentGrid" cellspacing="0" border="1" style="border-collapse: collapse;">
  <tbody>
    <tr>
      <td>
        <span id="Value">10</span>
        <span id="Rate">80.00</span>
      </td>
    </tr>
    <tr>
      <td>
        <span id="Span1">20</span>
        <span id="Span2">75.00</span>
      </td>
    </tr>
    <tr>
      <td>
        <span id="Span3">30</span>
        <span id="Span4">45.00</span>
      </td>
    </tr>
    <tr>
      <td>
        <span id="Span5">40</span>
        <span id="Span6">100.00</span>
      </td>
    </tr>
  </tbody>
</table>

很抱歉,如果这是重复或近似重复的问题。我对jquery很新,也做了一些搜索,但没有发现任何正确的事情。谢谢!

2 个答案:

答案 0 :(得分:0)

如果您更改代码以生成这样的跨度:

<span id="Rate30">45</span>

然后你可以这样做:

$("#Rate" + $ddl.val()).text();

$ddl是您的下拉列表。

答案 1 :(得分:0)

您可以使用jQuery .next()函数。

//iterate over each span to find the one that has the proper value
var valueSpan = $('#PercentGrid').find('span').each(function () { 
    if ($(this).innerHtml() === value) return $(this);
})
alert($(valueSpan).next().innerHtml());;
相关问题