HighDots Forums  

Wert aus Tabelle auslesen

Javascript (German) Programmiersprache JavaScript. (de.comp.lang.javascript)


Discuss Wert aus Tabelle auslesen in the Javascript (German) forum.

Reply
 
Thread Tools Display Modes
  #1  
Old   
Gregor Maasas
 
Posts: n/a

Default Wert aus Tabelle auslesen - 10-17-2004 , 07:05 PM






Angenommen ich habe ein Element:
<input type="text" name="itex">

und eine Tabelle in der ich mehrere daten im folgenden Format vorliegen
habe:

<table>
<tr>
<td>123</td>
<td><img src="b.png"/></td>
</tr>
<tr>
<td>456</td>
<td><img src="b.png"/></td>
</tr>
[...]
</table>

Wie kann ich dann auf das image b.png ein onclick event legen der mir in
mein input element den Zahlenwert einträgt, der in der vorhergeneden
Tabellenzelle steckt?

MfG,
Gregor



Reply With Quote
  #2  
Old   
Dietmar Meier
 
Posts: n/a

Default Re: Wert aus Tabelle auslesen - 10-17-2004 , 07:35 PM






Gregor Maasas wrote:

Quote:
Wie kann ich dann auf das image b.png ein onclick event legen der mir
in mein input element den Zahlenwert einträgt, der in der
vorhergeneden Tabellenzelle steckt?
In DOM-fähigen Brausern (in anderen vergiss es ohnehin):

function eintragen(oElem) {
var sWert = oElem.parentNode.previousSibling.firstChild.nodeVa lue,
oInput = document.forms[0].elements['itex']; // anpassen!
if (oInput) oInput.value = sWert;
}
[...]
<tr>
<td id="a">42</td><td><img src="b.png" onclick="eintragen(this)"></td>
</tr>

Wichtig ist dabei, zwischen diesen beiden TD-Elementen auf Leerzeichen,
Zeilenwechsel etc. zu verzichten.

ciao, dhgm



Reply With Quote
  #3  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: Wert aus Tabelle auslesen - 10-17-2004 , 07:41 PM



Gregor Maasas wrote:

Quote:
Angenommen ich habe ein Element:
input type="text" name="itex"
type="text" ist überflüssig, da "text" der Initialwert für das
type-Attribute des input-Elements ist.

Quote:
und eine Tabelle in der ich mehrere daten im folgenden Format vorliegen
habe:

table
tr
td>123</td
td><img src="b.png"/></td
^
Entscheide Dich: HTML oder XHTML? Oben verwendest Du
das HTML-INPUT-Element, hier verwendest Du plötzlich
XHTML-SHORTTAG-Syntax (<.../> für <...>...</...>).
(Und es fe lt das alt-Attribut für dieses Element.)

Du solltest für so triviale Dokumente nur HTML benutzen,
das genügt hier völlig.

Quote:
/tr
tr
td>456</td
td><img src="b.png"/></td
/tr
[...]
/table

Wie kann ich dann auf das image b.png ein onclick event legen der mir in
mein input element den Zahlenwert einträgt, der in der vorhergeneden
Tabellenzelle steckt?
Quickhack, der in IE 5+, Mozilla/5.0 und Opera 6+ funktionieren sollte:

<img src="b.png"
alt="B"
onclick="document.getElementsByTagName("itex")[0].value =
this.parentNode.previousSibling.firstChild.nodeVal ue;">

Besser ist es latür, Objekte und Eigenschaften vor dem Zugriff zu testen,
siehe <http://pointedears.de/scripts/test/whatami>. Auch wird die Lösung
einfacher, wenn das input-Element Kind eines form-Elements ist; dann lässt
es sich nämlich wie in der FAQ beschrieben referenzieren.


PointedEars
--
http://members.ud.com/download/gold/
http://folding.stanford.edu/
http://alien.de/seti/
http://setiathome.ssl.berkeley.edu/


Reply With Quote
  #4  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: Wert aus Tabelle auslesen - 10-17-2004 , 07:42 PM



Dietmar Meier wrote:

Quote:
tr
td id="a">42</td><td><img src="b.png" onclick="eintragen(this)"></td
/tr

Wichtig ist dabei, zwischen diesen beiden TD-Elementen auf Leerzeichen,
Zeilenwechsel etc. zu verzichten.
Achja, den Textknoten hatte ich vergessen.


PointedEars
--
************************************************** **********
* Die psf ab jetzt auch für <http://tagzilla.mozdev.org/>! *
* <http://pointedears.de/psf/> *
************************************************** **********


Reply With Quote
  #5  
Old   
Gregor Maasas
 
Posts: n/a

Default Re: Wert aus Tabelle auslesen - 10-18-2004 , 03:03 AM



Wow, das funktioniert klasse! Genau das was ich gesucht habe!
Vielen Dank.

Nur noch eine Frage:
wenn ich in der Tabellenzelle mit der zahl die ausgelesen werden soll
ein nobr tag einsetze wie verändert sich dann das query?

Ich meine das so:
<td id="a"><nobr>42</nobr></td><td><img src="b.png"
onclick="eintragen(this)"></td>

MfG,
Gregor

Reply With Quote
  #6  
Old   
Gregor Maasas
 
Posts: n/a

Default Re: Wert aus Tabelle auslesen - 10-18-2004 , 03:06 AM



Danke für die Antwort,
ich habe mir die FAQ unter:
http://dcljs.de/faq/ angeschaut aber nichts dazu gefunden, welchen
Eintrag meinst Du genau? Würde mir das mit den Forms gerne mal anschauen.

Thomas 'PointedEars' Lahn wrote:
Quote:
[...]Auch wird die Lösung einfacher, wenn das input-Element
Kind eines form-Elements ist; dann lässt es sich nämlich
wie in der FAQ beschrieben referenzieren.
MfG,
Gregor


Reply With Quote
  #7  
Old   
Dietmar Meier
 
Posts: n/a

Default Re: Wert aus Tabelle auslesen - 10-18-2004 , 04:39 AM



Gregor Maasas <g.maasas (AT) gmx (DOT) de> typed:

Quote:
wenn ich in der Tabellenzelle mit der zahl die ausgelesen werden soll
ein nobr tag einsetze wie verändert sich dann das query?
Bitte schau Dir doch statt bloßem C&P einmal die verwendeten Methoden
und Eigenschaften wie firstChild und nodeValue einmal in einer Doku
Deines geringsten Misstrauens an, dann sollte das kein Problem sein.
Du musst Dich halt einen Knoten weiter durch das Dokument hangeln als
beim vorherigen Beispiel.

Prinzipiell würde ich solch ein Dokument aber eher dynamisch erzeugen
(sei es serverseitig oder zur Not auch clientseitig), dann wird das
Ganze wesentlich simpler und portierbarer.

ciao, dhgm



Reply With Quote
  #8  
Old   
Gregor Maasas
 
Posts: n/a

Default Re: Wert aus Tabelle auslesen - 10-18-2004 , 04:55 AM



Dietmar Meier wrote:
Quote:
Bitte schau Dir doch statt bloßem C&P einmal die verwendeten Methoden
und Eigenschaften wie firstChild und nodeValue einmal in einer Doku
Schon geschehn und gefunden
Danke trotzdem!

MfG,
Gregor


Reply With Quote
  #9  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: Wert aus Tabelle auslesen - 10-18-2004 , 01:00 PM



Gregor Maasas wrote:

[Zitat repariert, bitte <http://got.to/quote> beherzigen, danke!]

Quote:
Thomas 'PointedEars' Lahn wrote:
[...] Auch wird die Lösung einfacher, wenn das input-Element
Kind eines form-Elements ist; dann lässt es sich nämlich
wie in der FAQ beschrieben referenzieren.

[...]
ich habe mir die FAQ unter:
http://dcljs.de/faq/ angeschaut aber nichts dazu gefunden, welchen
Eintrag meinst Du genau? Würde mir das mit den Forms gerne mal anschauen.
---> Liste der Fragen und Antworten
---> Formulare


HTH

PointedEars
--
Dir wird doch auch sicher schon aufgefallen sein, dass Winblows nicht
nur Spammern alle Wege offen lässt, sondern öfter versucht nach Hause
zu telefonieren als E.T.
-- Jakob Szydlowski in dcsf <adl5dq.3vv4kjp.1 (AT) news (DOT) jakob-s.de>


Reply With Quote
  #10  
Old   
Dietmar Meier
 
Posts: n/a

Default Re: Wert aus Tabelle auslesen - 10-18-2004 , 01:05 PM






Thomas 'PointedEars' Lahn wrote:

Quote:
[...] wie in der FAQ beschrieben referenzieren.

ich habe mir die FAQ [...] angeschaut aber nichts dazu gefunden,
welchen Eintrag meinst Du genau? Würde mir das mit den Forms
gerne mal anschauen.

---> Liste der Fragen und Antworten
---> Formulare
(1) Das ist keine genaue Angabe eines Eintags.
(2) Dort wird an keiner Stelle das Referenzieren beschrieben.
(3) Auch an anderer Stelle in der FAQ wird dies nicht beschrieben.

ciao, dhgm



Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.