xhtml selector id contra name
mykel
- javascript
0 Matze0 mykel0 Cheatah0 Gunnar Bittersmann
0 mykel
0 molily
Hello again,
folgendes kleines problem, für das ich bisher leider keine Lösung gefunden habe.
Folgendes Javascript spricht meine Contact Form an.
<!--
function submit_form(){
document.contactform.submit();
}
//-->
Dies tut sie über das attribut name="contactform".
Auszug aus der php Form:
<form action="./perform.php" method="post" name="contactform">
Die ganze Webseite ist DTD XHTML 1.0 Strict valide, bis auf das Attribut name="" dies nicht in der Strict Variante vorkommt. Verwende ich hingegen die Strict Alternative id="" wird das Javascript nicht mehr ausgeführt.
Frage: Gibt es ein alternatives Javascript das die Form über das Attribut id="" ansprechen kann?
Wenn nicht, sprechen Gründe dagegen das ich nur, eine Seite in meinem Fall die contact.php als DTD XHTML 1.0 Transitional ausweise?
... @all ... ich kenne die Einwände, aber der Hover Button ist ausdrücklich erwünscht.
Thanx@all
Hallo,
Die ganze Webseite ist DTD XHTML 1.0 Strict valide, bis auf das Attribut name="" dies nicht in der Strict Variante vorkommt...
hätte ich nicht gedacht. Komisch.
Frage: Gibt es ein alternatives Javascript das die Form über das Attribut id="" ansprechen kann?
natürlich mit getElementById().
Wenn nicht, sprechen Gründe dagegen das ich nur, eine Seite in meinem Fall die contact.php als DTD XHTML 1.0 Transitional ausweise?
Nö, mach ruhig.
Grüße, Matze
Hallo Matze,
danke für deine Antwort.
natürlich mit getElementById().
Werde es nachher mal ausprobieren.
hätte ich nicht gedacht. Komisch.
»»
Es ist tatsächlich so, dass beim <form> Tag ausgerechnet das attribut name="" nicht erlaubt ist.
Für alle dies interessiert HTML FORM TAG.
Grets, mykel
Hi,
natürlich mit getElementById().
Werde es nachher mal ausprobieren.
selbst der IE sollte Dir ein Objekt zurückliefern, das Deinen Wünschen entspricht.
Es ist tatsächlich so, dass beim <form> Tag ausgerechnet das attribut name="" nicht erlaubt ist.
Für alle dies interessiert HTML FORM TAG.
Und die entsprechende Spezifikation: strict ./. transitional
Cheatah
@@mykel:
Es ist tatsächlich so, dass beim <form> Tag ausgerechnet das attribut name="" nicht erlaubt ist.
Was spricht dagegen, Transitional zu verwenden?
Live long and prosper,
Gunnar
Hallo,
Was spricht dafür?
Mathias
Hallo,
Was spricht dafür?
die richtige Frage wäre in dem Zusammenhang "Was spricht dafür innerhalb eines Projektes durchgängig den selben Doctype zu verwenden".
Grüße, Matze
Hallo,
die richtige Frage wäre in dem Zusammenhang "Was spricht dafür innerhalb eines Projektes durchgängig den selben Doctype zu verwenden".
Ich wollte auch nur betonen, dass man ganz sicher nicht wegen dem fehlenden name-Attribut bei form von XHTML Strict abweichen muss; es kann natürlich andere Gründe geben.
Mathias
@@Matze:
Was spricht dafür?
In diesem Fall eigentlich nichts.
Ich wollte nur darauf hinaus, dass in begründeten Fällen auch Transitional sinnvoll sein kann. Ein solcher liegt hier nicht vor.
die richtige Frage wäre in dem Zusammenhang "Was spricht dafür innerhalb eines Projektes durchgängig den selben Doctype zu verwenden".
Nichts.
Die Frage stellt sich nicht für eine Webseite, sondern für jedes einzelne (X)HTML-Dokument unabhängig von den anderen. Es besteht nicht die geringste Notwendigkeit, dass alle (X)HTML-Dokumente einer Website in derselben Sprachversion/-variante verfasst werden.
Generell ist sicherlich XHTML 1.0 Strict anzustreben, in begründeten Fällen kann auch XHTML 1.0 Transitional sinnvoll sein (was nicht heißen soll, Elemente und Attribute statt CSS zu Darstellungsangaben zu nutzen), in begründeten Fällen kann auch XHTML 1.1 sinnvoll sein.
Live long and prosper,
Gunnar
Hallo,
natürlich mit getElementById().
Danke nochmals für den Tip es funktioniert prima, bisher im IE6 Und FF 2.0 getestet, und die Site bleibt weiterhin Strict valide.
Für evtl. folgende Leser noch das Javascript:
function submit_form(){
document.getElementById("contactform").submit();
}
Grets!
@@mykel:
natürlich mit getElementById().
Danke nochmals für den Tip es funktioniert prima
Nein, es vergeudet Zeit, weil der ganze Elementbaum abgesucht werden muss. Warum bist du nicht molilys Hinweis gefolgt?
Live long and prosper,
Gunnar
Hallo,
Nein, es vergeudet Zeit, weil der ganze Elementbaum abgesucht werden muss.
Hm. Wieso sollte er das bei getElementById, aber nicht bei document.forms.id?
Wahrscheinlich legen die Browser bei beiden Hashtabellen an, sobald das Dokument hinreichend geparst ist. Da wird dann nur noch nachschlagen, nicht der Elementbaum immer wieder durchlaufen.
Mathias
@Gunnar
natürlich mit getElementById().
Danke nochmals für den Tip es funktioniert primaNein, es vergeudet Zeit, weil der ganze Elementbaum abgesucht werden muss. Warum bist du nicht molilys Hinweis gefolgt?
Thanx...Molilys Hinweis hab ich voll übersehen... sieht auch interessant aus und du könntest sogar recht haben... es benötigt tatsächlich etwas mehr Zeit zum versenden als zuvor... Form ausgefüllt etwa 5s (_regex an 5 Felder!)... immer noch erstaunlich schnell, für das, dass ich hier (Poona) einen Internetanschluss habe der in etwa einem DSL 256 in D. entspricht!
Grets from India!
Hallo,
<!--
function submit_form(){
document.contactform.submit();
}
//-->
Lass die Auskommentierung weg, die hat bei XHTML überhaupt nichts zu suchen.
Die ganze Webseite ist DTD XHTML 1.0 Strict valide, bis auf das Attribut name="" dies nicht in der Strict Variante vorkommt. Verwende ich hingegen die Strict Alternative id="" wird das Javascript nicht mehr ausgeführt.
Das kann ich mir nicht erklären. Welcher Browser?
Frage: Gibt es ein alternatives Javascript das die Form über das Attribut id="" ansprechen kann?
Ja, document.forms.ID!
Dies sollte erst nach einem einem Formular mit einer ID suchen, dann nach einem mit einem entsprechenden name.
Vielleicht liegt es an der Kurzschreibweise document.bezeichner, dass es mit einem id-Attribut nicht funktioniert. Denn diese ist nicht standardisiert.
Mathias