michi: anführende null bei zahlen

hi an alle

mein problem ist wie schaff ich es eine einzelnen zahl (1,2,...,9) zu einer zahl mit einer führenden null umzuformatieren???

ueber php wurden 31 felder erstellt:
name der felder: f_chk_01 bis f_chk_31

nun sollen die felder mit javascript ueberprueft werden:

for ( iii = 0; iii < 32; iii++)
{
    //f_chk_01 - f_chk_31 sollen überprüft werden
    var str_feld = "f_chk_" + iii;

//2. funktion zur eigentlichen überprüfung der felder
    if ( !feld_kontrolle(document.form.elements[str_feld].value))
    {
        sonstige anweisungen;
    }
}

wuerd mich freuen, wenn mir jemand helfen kann

michi

  1. hi an alle

    mein problem ist wie schaff ich es eine einzelnen zahl (1,2,...,9) zu einer zahl mit einer führenden null umzuformatieren???

    ueber php wurden 31 felder erstellt:
    name der felder: f_chk_01 bis f_chk_31

    einfacher wäre es, wenn du allenFelder den gleichen Namen geben würdest, dann könntest du per Index darauf zugreifen.

    f_chk[0] bis f_chk[31]

    nun sollen die felder mit javascript ueberprueft werden:

    for ( iii = 0; iii < 32; iii++)

    Nur so als Tipp, falls du dieses dreifach i verwendet, weil du schon mal seiteneffekte hattest.
    Benutze var und so ist i nur innerhalb der forschleife sichtbar.

    for ( var i = 0; i < 32; i++)

    Fall das mit den gleichen Namen nicht geht, da du ja auch die Anwendung anpassen müßtest (in Perl wäre auch das einfacher) hier eine Lösung:

    function formatNr(nr, length)
    {
    var zahl = nr;
    var l = length ? length : 2;
    zahl += '';
    for(var i = zahl.length; i < l; i++) zahl = '0' + zahl;
    return zahl;
    }

    wenn du immer weißt, wieviele nullen du brauchst:

    var neue_zahl = ('00' + alte_zahl).substr(0, 2);

    Struppi

    1. Moin Moin !

      wenn du immer weißt, wieviele nullen du brauchst:

      var neue_zahl = ('00' + alte_zahl).substr(0, 2);

      Damit fällst Du bei 10 auf die Nase:

      '00' + 10 => '0010'

      '0010'.substr(0,2) => '001'

      Alexander <-- froh, daß meine Lieblingssprache printf("%02i",integer) kann ...

      --
      Nein, ich beantworte keine Fragen per eMail. Dafür ist das Forum da.
      Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so!"
      Mein "Lieblings-Forums-Bug": http://cforum.teamone.de/phpbt/bug.php?op=show&bugid=103&pos=2
      1. Moin Moin !

        wenn du immer weißt, wieviele nullen du brauchst:

        var neue_zahl = ('00' + alte_zahl).substr(0, 2);

        Damit fällst Du bei 10 auf die Nase:

        '00' + 10 => '0010'

        '0010'.substr(0,2) => '001'

        Ach, das ist ja auch Quatsch was ich da oben geschrieben hab.

        var neue_zahl = '00' + alte_zahl
        neue_zahl = neue_zahl.substr(neue_zahl.length-2);

        Struppi.

        printf ist natürlich angenehmer ;-)

  2. Hallo Struppi,

    mein problem ist wie schaff ich es eine einzelnen zahl (1,2,...,9) zu einer zahl mit einer führenden null umzuformatieren???

    garnicht, Zahlen haben keine führenden Nullstellen, wenn sie grösser als 1 sind.

    Vorschlag: wandle die Zahl in einen String um und mach bei Bedarf eine "0" vorne ran.

    ueber php wurden 31 felder erstellt:
    name der felder: f_chk_01 bis f_chk_31

    nun sollen die felder mit javascript ueberprueft werden:

    for ( iii = 0; iii < 32; iii++)

    das gibt die die Zahlen 0 bis 31... schlecht!

    Gruss,
    Kube