2012-04-09 9 views
1

Seit einiger Zeit habe ich gehört, dass mit der <button></button>, um ein Formular zu senden, ist nicht gut - weil IE den Wert der Schaltfläche statt der Eingaben in das Formular übergibt. Ist das wahr?<button> einreichen IE

Weil ich derzeit mit Bootstrap arbeite, und ich habe diese Login-Taste, die das Pfeilsymbol auch enthalten sollte. wie:

<button type="submit" class="btn btn-primary" name="btnSubmit"> 
Login <i class="icon-arrow-right"></i> 
</button> 

Ich kann nicht sehen, wie ich es mit einem normalen Eingabeknopf tun sollte:/

Hoffnung jemand diese Frage beantworten zu können!

Danke Jungs!

+0

Sie versucht haben, Hinzufügen der 'class = "btn btn-primary"' Attribut auf ein Element? Es sollte das gleiche Styling anwenden. – q3d

+0

Es ist wahr, falls IE (welche Version ?!) gegen die HTML 4 Spezifikation verstoßen würde. Es ist nicht wahr, wenn IE kompatibel ist). http://www.w3.org/TR/REC-html40/interact/forms.html#edef-BUTTON – hakre

+1

@hakre - Es ist ein Fehler in IE oder besser - zwei. IIRC "Alle Button-Elemente sind immer erfolgreich" wurde in IE7 behoben und "Button-Elemente senden ihren Inhalt statt ihrer Wert-Attribute" wurde in IE8 (vielleicht 9) aber nur im Standard-Modus behoben. – Quentin

Antwort

2

Es ist nur ein Problem, wenn Sie mehrere Senden Schaltflächen haben und zwischen ihnen auf dem Server unterscheiden müssen.

Wenn Sie tun und Sie IE6 unterstützen müssen, dann sollten Sie vermeiden, <button> Elemente zu verwenden, und sie werden alle immer erfolgreiche Kontrollen sein.

Wenn Sie IE7 (und möglicherweise IE8) unterstützen müssen, können Sie ihnen eindeutige Namen geben und auf dem Server testen, um zu sehen, welcher Name in den Daten angezeigt wird (während der Wert vollständig ignoriert wird).

+0

Ich brauche nur Unterstützung, für IE7,8,9 Ich werde versuchen, herum rumspielen, um zu sehen, was passiert, wenn ich zurück zu einem Windows-Computer. – LucasRolff

0

nur Eingabe verwenden. CSS-Stylings funktionieren auf die gleiche Weise für Eingaben. Sie sich hierzu einfach adressieren auch die Schaltfläche mit in Ihrem CSS:

.btn_primary input[type="submit"] 

, die in gte IE6 funktioniert.

HTML

<input type="submit" name="btnSubmit" class="btn btn_primary" /> 
+0

Es war nicht gerade meine Frage entschuldigung .. Das Styling des Eingangs funktioniert gut, aber es ist das Tag, das ich enthalten sollte. – LucasRolff

+0

sry, mein Fehler! Die Arbeit mit einem Hintergrundbild wäre eine andere Lösung, ein Hintergrundbild mit dem Symbol. Das ist die Art, wie ich alle meine Submit-Buttons style – Mohammer