Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    utilizzare submit al posto di button

    Ciao a tutti,

    utilizzo uno script per validare i campi di un form che per funzionare deve avere come bottone un type=botton, intanto se metto type=button al posto di type=submit quello che ho nell'istruzione OnSubmit non mi funziona più

    questa è la pagina in questione:

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function DoSubmit(obj) {

    var Dato1 = obj.Dato1.value;

    var strIllegalChars = /[\(\)\<\>\;\:\\\*\+\=\"\[\]]/;

    var submitform = true;
    var error = '>>> MODULO MODIFICA -------------------------------------\n\n';
    error += ' Attenzione : \n\n';



    if (Dato1.length < 3) {
    error += ' > Nome è un campo obbligatorio \n';
    submitform = false;
    }
    if (Dato1.length > 20 ) {
    error += ' > Nome può contenere massimo 20 caratteri \n';
    submitform = false;
    }
    if (Dato1.length > 1 && Dato1.match(strIllegalChars)) {
    error += ' > Nome contiene caratteri non consentiti \n';
    submitform = false;
    }


    if (submitform) {
    obj.submit();
    }
    else {
    error += '\n--- Fine Controllo ---\n\n';
    alert (error);
    return false;
    }
    }
    -->
    </script>
    </head>
    <body>
    <form name="selecter5" method="POST" action="name.asp" OnSubmit="d=document.Prova.document.selecter5;this .Marchio.value=d.Select1.options[d.Select1.selectedIndex].value;this.Categoria.value=d.Select2.options[d.Select2.selectedIndex].value;">
    <table border="1" width="600">
    <tr>
    <td>
    <table border="0" width="500" id="table1" cellpadding="0">
    <tr>
    <td width="95">Campo 1</td>
    <td width="341">
    <input type="text" name="Dato1" size="20" style="font-family: Arial; font-size: 8pt; border-style: dotted; border-width: 1px; padding-left:2px; padding-right:2px; width:200; height:18"></td>
    </tr>
    <tr>
    <td width="95">Campo 2</td>
    <td width="341">
    <input type="text" name="Dato2" size="20" style="font-family: Arial; font-size: 8pt; border-style: dotted; border-width: 1px; padding-left:2px; padding-right:2px; width:200"></td>
    </tr>
    <tr>
    <td width="436" colspan="2">
    <iframe id ="ProvCom" name="Prova" src="Dato3.asp" frameborder="0" marginwidth="100" marginheight="0" scrolling="no" width="426" height="54"></iframe></td>
    </tr>

    <tr>
    <td width="95"></td>
    <td width="341">
    <input name="Submit" type="submit" id="Submit" value="Invia" onclick="DoSubmit(this.form)">
    </td>
    </tr>
    </table>
    <p style="margin-top: 0; margin-bottom: 0"></p>
    <p style="margin-top: 0; margin-bottom: 0"></td>
    </tr>
    </table>
    <input type="hidden" name="Categoria" value="">
    <input type="hidden" name="Marchio" value="">
    </form>

    <table border="0" width="343">
    <tr>
    <td width="92">Campo 1</td>
    <td width="241"><%=Request("Dato1")%></td>
    </tr>
    <tr>
    <td width="92">Campo 2</td>
    <td width="241"><%=Request("Dato2")%></td>
    </tr>
    <tr>
    <td width="92">Campo 3</td>
    <td width="241"><%=Request("Marchio")%></td>
    </tr>
    <tr>
    <td width="92">Campo 4</td>
    <td width="241"><%=Request("Categoria")%></td>
    </tr>
    </table>
    </body>
    </html>
    Pippo Giacalone
    giacalone@tin.it

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Da un problema all'altro?

    Togli la parte onsubmit dal form e trasferiscila nello script:

    codice:
    if (submitform) {
      d=document.Prova.document.selecter5;
      obj.Marchio.value=d.Select1.options[d.Select1.selectedIndex].value;
      obj.Categoria.value=d.Select2.options[d.Select2.selectedIndex].value;
      obj.submit();
    }
    e cambia il pulsante:
    <input name="pincopallino" type="button" id="pincopallino" value="Invia" onclick="DoSubmit(this.form)">

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    grazie mille
    Pippo Giacalone
    giacalone@tin.it

  4. #4
    se oltre ai campi text voglio validare dei campi select utilizzo:

    if (obj.NomeSelect.options[obj.NomeSelect.selectedIndex].value == '') {
    error += ' > Il Campo XXXX è un campo obbligatorio \n';
    submitform=false;
    }

    ma con i select che si trovano dentro l'iframe non funziona
    Pippo Giacalone
    giacalone@tin.it

  5. #5
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    obj e' il riferimento al form contenuto nella pagina "contenitore", il riferimento al form nell'iframe e', come detto piu' volte, document.Prova.document.selecter5

    ciao

    Edit: stai continuando qui il discorso iniziato nell'altra discussione... che verra' immediatamente chiusa
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  6. #6
    Non riesco ad adattare la modifica che mi hai segnalata:

    Originalmente era così:
    if (obj.NomeCampo.options[obj.NomeCampo.selectedIndex].value == '') {
    error += ' > Il Campo XXXX è un campo obbligatorio \n';
    submitform=false;
    }

    Con la tua segnalazione è diventato così:
    if (document.Prova.document.selecter5.Categoria.optio ns[document.Prova.document.selecter5.Categoria.select edIndex].value == '') {
    error += ' > Il Campo Categoria è un campo obbligatorio \n';
    submitform=false;
    }

    ho provato anche in altri modi ma senza risultato ......
    Pippo Giacalone
    giacalone@tin.it

  7. #7
    mi rettifico .....

    funziona tutto, il codice andava modificato così:

    if (document.Prova.document.selecter5.Select1.options[document.Prova.document.selecter5.Select1.selected Index].value == '') {
    error += ' > Il Campo Categoria è un campo obbligatorio \n';
    submitform=false;
    }

    non essendo pratico di javascript vado per tentativi e non per logica ....

    grazie br1
    Pippo Giacalone
    giacalone@tin.it

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 © 2024 vBulletin Solutions, Inc. All rights reserved.