Gibt es eine Möglichkeit, die ID des Elements zu erhalten, das ein Ereignis auslöst?
Ich denke da an etwas wie:
$(document).ready(function() {
$("a").click(function() {
var test = caller.id;
alert(test.val());
});
});
<script type="text/javascript" src="starterkit/jquery.js"></script>
<form class="item" id="aaa">
<input class="title"></input>
</form>
<form class="item" id="bbb">
<input class="title"></input>
</form>
Es sei denn natürlich, dass die var test
sollte die id enthalten "aaa"
wenn das Ereignis vom ersten Formular ausgelöst wird, und "bbb"
wenn das Ereignis vom zweiten Formular ausgelöst wird.
26 Stimmen
Ihr Beispiel ist ein wenig merkwürdig. Sie sind ein Klick-Ereignis zu 'a' anhängen, aber haben keine Anker. Ändern Sie es zu $('input.title').click(...) wäre ein wenig klarer für zukünftige Leser Ihrer Frage sein.
3 Stimmen
Sie können verwenden
event.target.id
im Event-Handler, um die ID des Elements zu erhalten, das ein Ereignis ausgelöst hat.0 Stimmen
Sie können
event
als Argument in Ihrer Click-Callback-Funktion und verwenden Sie dannevent.target.id