Ändern Sie den Typ des Input-Elements mit jquery
Ich versuche, ändern Sie den Typ der Eingabe, speziell nach Klick in input muss ich ändern type="text"
zu type="date"
.
<input type="text" placeholder="DOB" id="dob" name="dob" />
<script>
$("#dob").click(function () {
$(this).attr('type', 'date');
});
</script>
Möchte ich diese Aufgabe für eine iphone App. Dies funktioniert nicht im iphone 4. Wie kann dies tun?
- Kann ich Sie bitten, Grund für den Wunsch, dies zu tun? Ich bin ziemlich sicher, dass es muss einen besseren Weg geben.
- Im iphone 4 der Platzhalter doesnot zeigen für input type dat. So möchte ich ändern, geben Sie nach Klick auf das Feld
- Besser haben zwei input-Felder ein-und ausblenden das text-Feld und zeigen Sie das Datumsfeld auf click-Ereignis.
- Sie brauchen keinen Platzhalter, der auf ein Datum eingegeben - Sie kommen mit widgets zu tun, das die Formatierung für Sie. Das problem ist, dass Sie zu sein scheinen, über die Platzhalter als Ersatz für eine
<label>
dem die Spezifikation ist sehr explizit, dass Sie nicht tun sollten. - Das placeholder-Attribut sollte nicht verwendet werden als eine alternative zu einem label. und Das Platzhalter-Attribut stellt einen kurzen Hinweis (ein Wort oder einen kurzen Satz) sollen helfen, den Benutzer mit der Dateneingabe. Einen Hinweis könnte eine Probe Wert oder eine kurze Beschreibung des erwarteten formats.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden Sie diesen code :
Ist hier das fiddle : http://jsfiddle.net/HNKkW/
Es ist eine Eigenschaft, so prop() wird es tun :
Und denken Sie daran, wickeln, dass in einem Dokument.ready Funktion !
GEIGE
Wenn Sie eine Frühere version von Jquery
Benutzen oder wenn Sie neueste siehe @adeno 's Antwort
Sehen diese arbeiten jsfiddle.
Können Sie nicht ändern Sie den Typ eines input-aufgrund von Einschränkungen im browser mit
.attr
. Hinweis: diese Warnung erhalten Sie von der Konsole aus:Können Sie ändern Sie den Typ mit .prop()
Ich denke, es kann ein bisschen eine zugrunde liegende problem hier. Würde der Benutzer nicht verwirrt werden durch die Art der text-box ändern?
Wenn überhaupt möglich, sollten Sie versuchen, und ändern Sie den Typ der text-box, bevor es zu zeigen, um den Benutzer.
Ich denke, die richtige Lösung für Ihr problem ist die Verwendung der .Fokus und die .prop Eigenschaften.
für mich mit prop direkt auf das element war nicht arbeiten, dies jedoch war für mich nach viel Gefummel, also wollte ich teilen und vielleicht jemand retten, die Kopfschmerzen.