Chler: IE8 inputfield type ändern (Datepicker)

Hallo zusammen

Ich habe ein Inputfield welches den Datepicker ansteuert. Im kompletten Skript wurde er angepasst sodass der User das Datum im deutschen Format sieht (original.attr('id') + '_display) und als hidden Feld wird das amerikanische Format versendet...

Mein Problem ist nun das ich mich mit dem IE 8 herumärgere da der Datepicker nicht angezeigt wird, weil er den Type nicht ändern kann.

  
var original = $(this);  
var display = original.clone();  
  
original.attr('type', 'hidden');  
  
display.attr('name', original.attr('id') + '_display');  
display.attr('id', original.attr('id') + '_display');  
original.after(display);  

Hat hier schon jemand etwas ähnliches gemacht oder kann mir einen Tipp geben wie ich das zum laufen kriege mit dem IE 8?

Danke und Gruss

  1. Mein Problem ist nun das ich mich mit dem IE 8 herumärgere da der Datepicker nicht angezeigt wird, weil er den Type nicht ändern kann.

    AFAIR geht das im IE <= 8 schlicht nicht. Was ginge: neues Element mit gewünschtem Typ erzeugen und ins Formular hängen und das Original entfernen.

    Muss das Ding wirklich den Type ändern oder würde es nicht ausreichen, es auszublenden?

    1. Muss das Ding wirklich den Type ändern oder würde es nicht ausreichen, es auszublenden?

      Danke für deine Antwort.

      Es muss ein hidden Feld sein welches das amerikanische Format über das Form schickt.
      Aber dann probiere ich ein neues Inputfeld zu erstellen

      1. Hallo

        Muss das Ding wirklich den Type ändern oder würde es nicht ausreichen, es auszublenden?

        Es muss ein hidden Feld sein welches das amerikanische Format über das Form schickt.

        <input type="hidden"> muss an sich – auch in alten IE-Versionen – funktionieren. Diesen Typ für input gibt es schon immer™.

        Warum ist der Typ date für dich nicht nutzbar? Da du sowieso JS nutzt, kannst du die Funktionalität für ältere und unfähige Browser auch mit Polyfills erreichen. Wer sowohl einen alten bzw. unfähigen Browser nutzt, als auch JS ausgeschaltet hat, hat immer noch ein normales Eingabefeld. Wenn du nett bist, auch mit Kurzanleitung für das geforderte Format. Die serverseitige Prüfung und evtl. nötige Umwandlung bei der Verarbeitung bleibt dir eh nicht erspart.

        Tschö, Auge

        --
        Verschiedene Glocken läuteten in der Stadt, und jede von ihnen vertrat eine ganz persönliche Meinung darüber, wann es Mitternacht war.
        Terry Pratchett, "Wachen! Wachen!"
        ie:{ fl:| br:> va:) ls:[ fo:) rl:( ss:| de:> js:| zu:}
        Veranstaltungsdatenbank Vdb 0.3
      2. Es muss ein hidden Feld sein welches das amerikanische Format über das Form schickt.

        Dem Server ist doch es egal, ob er ein unsichtbares(CSS) "input type=text" oder ein "input type=hidden" serviert bekommt.

        Aber dann probiere ich ein neues Inputfeld zu erstellen

        Sollte auch klappen.