使用选择器在jQuery中选择父元素(无遍历)

时间:2015-06-25 07:20:22

标签: jquery jquery-selectors

我需要在第二行代码中选择父元素(本例中为<td>)(<input>):

<td class="pbButton">
<input value="Add to Campaign" class="btn" name="addCampaign" onclick="javascript: openLookup('/_ui/common/data/LookupPage?lkpr=00Qo000000GyyNl&amp;lktp=701&amp;enableScopes=1&amp;addToCampaign=1',670,'1','')" title="Add to Campaign" type="button"></td>

有两个限制:

  1. 我只能使用jQuery选择器(不能使用遍历)。
  2. 我对父元素一无所知(它可以是任何HTML 元素,任何类或id等。)。
  3. 这样做的最佳方法是什么?

    感谢。

1 个答案:

答案 0 :(得分:1)

您可以使用:has()选择器

$('*:has( > input[name="addCampaign"])').css('background-color', 'lightgrey')
td {
  padding: 10px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table>
  <tr>
    <td class="pbButton">
      <input value="Add to Campaign" class="btn" name="addCampaign" onclick="javascript: openLookup('/_ui/common/data/LookupPage?lkpr=00Qo000000GyyNl&amp;lktp=701&amp;enableScopes=1&amp;addToCampaign=1',670,'1','')" title="Add to Campaign" type="button" />
    </td>
    <td>something else</td>
  </tr>
</table>