Bildwechsel hin und her
Pedda
- javascript
Hallo zusammen
Ich sortiere eine zweispaltige Tabelle nach Spalten alphabetisch (kennt man)...
Die Sortierung selbst ist auch nicht das Problem... Bei Klick auf die Spalten-Titel-Grafik wird die Tabelle neu sortiert.
Nun möchte ich aber, dass die Grafik je nach Sortierreihenfolge einmal einen Pfeil nach oben und einmal nach unten zeigt...
Die alternativ-Grafiken hab' ich erstellt....
Ist mein Problem bis hierhin verständlich ?
Die Zeile mit Aufruf zum Bildwechsel:
<tr>
<td><img id="order1bild" name="order1bild" src="../images/b_order1.gif" border="0" width="137" height="9" alt="" onClick="orderList(1)"> </td>
<td><img id="order2bild" name="order2bild" src="../images/b_order2.gif" border="0" width="137" height="9" alt="" onClick="orderList(2)"></td>
</tr>
Und hier das Script:
function orderList(o) {
bild1=''+document.getElementById('order1bild').src;
bild2=''+document.getElementById('order2bild').src;
if (o==1) {
if (bild1='../images/b_order1d.gif') {
document.getElementById('order1bild').src='../images/b_order1u.gif';
bild1=''+document.getElementById('order1bild').src;
}
else {
document.getElementById('order1bild').src='../images/b_order1d.gif';
bild1=''+document.getElementById('order1bild').src;
}
document.getElementById('order2bild').src='../images/b_order2.gif';
bild2=''+document.getElementById('order2bild').src;
}
else {
if (bild2='../images/kontakte/b_order2u.gif') {
document.getElementById('order2bild').src='../images/b_order2d.gif';
bild2=''+document.getElementById('order2bild').src;
}
else {
document.getElementById('order2bild').src='../images/b_order2u.gif';
bild2=''+document.getElementById('order2bild').src;
}
document.getElementById('order1bild').src='../images/b_order1.gif';
bild1=''+document.getElementById('order1bild').src;
}
}
Erklärung zu den verwendeten Grafiken:
b_order1.gif = Erste Spalte Titel, wenn nach 2ter Spalte sortiert wird (ohne Pfeil also)
b_order2.gif = Zweite Spalte Titel, wenn nach 1ter Spalte sortiert wird (ohne Pfeil also)
b_order1d.gif = Erste Spalte Titel - Pfeil nach unten (down)
b_order2d.gif = Zweite Spalte Titel - Pfeil nach unten (down)
b_order1u.gif = Erste Spalte Titel - Pfeil nach oben(up)
b_order2u.gif = Zweite Spalte Titel - Pfeil nach oben (up)
Das Ganze funktioniert aber nicht so wie es soll....
Spalte 1 ist nach erstem Klick IMMER b_order1u.gif und Spalte 2 b_order2d.gif (egal wie oft ich hin und her klicke)
Kann mir einer sagen wo ich den Fehler mache, bzw. hat einer 'ne einfachere / sauberere Lösung parat ?
Thnx
Gruss
Pedda
hi,
function orderList(o) {
bild1=''+document.getElementById('order1bild').src;
bild2=''+document.getElementById('order2bild').src;
Woher kommt nur immer dieser Unfug mit den Leerstrings ...?
{irgendeinBild}.src _ist_ vom Typ String - es besteht also absolut keine Notwendigkeit, da noch ''+ vorzuhängen.
if (bild1='../images/b_order1d.gif') {
Da hast du eine Zuweisung gemacht, und keinen Vergleich.
(Weiter unten auch noch mal.)
gruß,
wahsaga
Hi
Aaaaaaahhhh... Zuweisung lautet das Zauberwort *g*
Hätt' ich auch selbst sehen müssen (!)
Thnx !
Nochmal ich
Aaarhs !!!
Das mit der Zuweisung war zwar auch ein Fehler, aber nicht DER Fehler :(
Jetzt kann ich zwar zwischen den Spalten hin und her springen, aber als Bild wird mir IMMER der Pfeil nach unten (b_order1d.gif/b_order2d.gif) angezeigt....
Warum ?
function orderListe(o) {
bild1=document.getElementById('order1bild').src;
bild2=document.getElementById('order2bild').src;
if (o==1) {
if (bild1=='../images/b_order1d.gif') {
document.getElementById('order1bild').src='../images/b_order1u.gif';
}
else if (bild1=='../images/b_order1u.gif') {
document.getElementById('order1bild').src='../images/b_order1d.gif';
}
else {
document.getElementById('order1bild').src='../images/b_order1d.gif';
}
document.getElementById('order2bild').src='../images/b_order2.gif';
}
else {
if (bild2=='../images/b_order2u.gif') {
document.getElementById('order2bild').src='../images/b_order2d.gif';
}
else if (bild2=='../images/kontakte/b_order2d.gif') {
document.getElementById('order2bild').src='../images/b_order2u.gif';
}
else {
document.getElementById('order2bild').src='../images/b_order2d.gif';
}
document.getElementById('order1bild').src='../images/b_order1.gif';
}
}
Weiss jemand Rat ?
Thnx
Gruss
Pedda
hi,
function orderListe(o) {
bild1=document.getElementById('order1bild').src;
Kontrollausgabe machen: Was genau enthält bild1 jetzt?
Stimmt es mit dem überein, was du erwartest?
gruß,
wahsaga