Ich habe einen folgenden Code in meiner HTML-Datei, und ich möchte auf das grand parent eines Elements wie die Tabelle zugreifen, die das große Elternteil von td im folgenden Code ist. Dazu habe ich die folgende jquery-Syntax verwendet, aber sie zeigt "undefined" an. Kann mich irgendjemand leiten, wo das Problem liegt?
<script type="text/javascript">
$(document).ready(function() {
alert($('td[id="4"]').parents().eq(1).attr("id"));
});
</script>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div class="ui-layout-center" id="center" runat="server">
<table id="Table1" >
<tr id="tr1">
<td id="3" class="cell" >
first cell
</td>
<td id="4" class="cell">
second cell
</td>
</tr>
</table>
<br />
<br />
</div>
</form>
</body>
</html>
Es ist nicht "undefined" für mich: http://jsfiddle.net/tt3wC/ Vielleicht ist Ihr tatsächlicher HTML/Code anders. Oh und ja, Sie müssen den Code ausführen, nachdem das DOM geladen wurde, was Sie [wenn Sie das Tutorial lesen] (http://docs.jquery.com/Tutorials:Getting_Started_with_jQuery) wissen würden: * "Wie fast alles, was wir tun Wenn jQuery das Document Object Model (DOM) liest oder manipuliert, müssen wir sicherstellen, dass wir Ereignisse usw. hinzufügen, sobald das DOM bereit ist. "* –
mögliches Duplikat von [jQuery select ancestor] (http: // stackoverflow.com/questions/2200775/jquery-select-ancestor) –
Hat Ihr tatsächlicher Code bereit Handler um es? '$ (function() {...});' –