Ich habe eine Seite, die dynamisch erstellt wird. Es kann wie so eine Reihe von verschiedenen Radiobuttons mit IDs hat:jQuery Selector Hilfe - wie Element, deren ID beginnt und endet mit bestimmten Zeichen
<input type="radio" id="cc-radio-opt-0" />
<input type="radio" id="cc-radio-opt-1" />
<input type="radio" id="gc-radio-opt-0" />
<input type="radio" id="gc-radio-opt-1" />
Um Änderungsfunktionen zu schreiben, ich bin so etwas wie dies zu tun:
$('[id^=cc-radio-opt-]').live("change", function() {
var idx = $(this).attr('id').split('-').pop();
});
Diese gut funktioniert. Aber jetzt muss ich innerhalb dieser Change-Funktion eine Reihe anderer verwandter Felder verstecken. Sie werden wie folgt benannt:
<input type="text" id="cc-number-0" />
<input type="text" id="cc-month-0" />
<input type="text" id="gc-number-0" />
<input type="text" id="gc-month-0" />
<input type="text" id="cc-number-1" />
<input type="text" id="cc-month-1" />
<input type="text" id="gc-number-1" />
<input type="text" id="gc-month-1" />
Ich brauche alle Felder greifen zu können, deren IDs beginnen mit „cc“ und mit der gleichen Anzahl wie die Radio-Button beenden, die durch die idx
Variable (bestimmt ist angeklickt worden. ich weiß, ich kann alle Felder erhalten, indem sie diese mit „cc“ beginnen:
$('[id^=cc-]');
Aber wie kann ich zeigen auch, dass sie mit dem, was beenden müssen idx
ist mit anderen Worten, wenn die cc-radio-opt-1
Radio ist? geklickt, wie bekomme ich nur cc-number-1
und cc-month-1
?
Nein, sie sind nicht IDs duplizieren. Wenn Sie genauer hinschauen, sehen Sie, dass eine Gruppe mit cc beginnt und die andere mit gc beginnt. – EmmyS
für zukünftige Referenz. .live ist veraltet http://api.jquery.com/live/ Sie sollten .on statt http://api.jquery.com/on/ – iAmClownShoe
@iAmClownShoe - ich bin mir bewusst, aber aufgrund Mit dem CMS, mit dem wir arbeiten, stecken wir mit einer älteren Version von jQuery fest. – EmmyS