Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    208

    Controllo campi testo con array

    Salve,

    ho cercato varie discussioni sul forum ma non ne vengo a capo.

    In sostanza ho una serie di campi text che possono variare di numero, quindi:
    codice:
    <input type="text" name="qta[0]" id="qta[0]" />
    <input type="text" name="qta[1]" id="qta[1]" />
    <input type="text" name="qta[2]" id="qta[2]" />
    ...
    il controllo dello script dovrebbe essere tipo
    codice:
    var r = document.getElementById('qta[]');
    if (r.length) {
    for (var i=0;i<r.length;i++) {
    if (qta[i].value == 0) alert('errore');
    }
    ma naturalmente non funziona.

    Come faccio a trovare l'esatto numero (length) di campi del form?

  2. #2
    Utente di HTML.it L'avatar di nourdine
    Registrato dal
    Nov 2005
    Messaggi
    1,130
    approccio sbagliato. js non e' un genio. come fa a capire che tu vuoi tutti gli input con id della forma qta["qualche numero"]? un diverso aproccio alla questione e' il seguente:

    var tuoFrom = document.getElementById("nomeTuoForm");
    var in = tuoForm.getElementsByTagName('INPUT');
    if (in.length) {
    for (var i=0;i<in.length;i++) {
    if (in[i].value == "") alert('errore');
    }
    }

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    208
    ok, ma se nel form ho altri campi input come faccio a dirgli di verificarne solo alcuni e non tutti?

  4. #4
    Utente di HTML.it L'avatar di nourdine
    Registrato dal
    Nov 2005
    Messaggi
    1,130
    gli dai una class e la controlli in JavaScript. Assumendo che tu usa la class "classeControllo" (e' un nome arbitrario!) allora avrai:

    Codice PHP:
    var tuoFrom document.getElementById("nomeTuoForm");
    var 
    in tuoForm.getElementsByTagName('INPUT');
    if (
    in.length) {
       for (var 
    i=0;i<in.length;i++) {
          if (
    in[i].value == "" && in[i].className=="classeControllo"alert('errore'); 
       }


  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    208
    ok grazie, farò delle prove.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.