Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14

Discussione: controllo checkbox

  1. #1
    Utente di HTML.it L'avatar di emu86
    Registrato dal
    May 2005
    Messaggi
    324

    controllo checkbox

    ciao a tutti... volevo una informazione: sto facendo uno script per il controllo di alcuni campi su alcuni form e volevo sapere com posso eseguire il controllo su una checkboc, cioè sapere se è stata inserita la spunta oppure no. questo è un pezzo del codice:

    codice:
    function controlla(objform) {
    	var ok = 1;
    	if (objform.nome.value == "") {
    	alert("Il nome è obbligatorio!");
    	var ok = 0;
    	}
            ..... (altri controlli)
    	}
    	if (ok == 0) {
    		return false;
    	}
    	if (ok == 1) {
    		objform.submit();
    	}
    }
    e il'objform me li passo con un onsubmit="javascript:controlla(this)" sul tag form.

    Graie per l'aiuto

  2. #2

    ........

    Ciao.
    if (objform.nome.checked)
    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  3. #3
    Utente di HTML.it L'avatar di emu86
    Registrato dal
    May 2005
    Messaggi
    324
    grazie mille........

    scusa un'altra cosa... io devo controllare che NON sia spuntata... cosa devo inserire? basta come in php un ! prima dell'objform o qualcos'altro?

    grazie mille

  4. #4

    .......

    basta come in php un ! prima dell'objform
    OK

    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  5. #5
    Utente di HTML.it L'avatar di emu86
    Registrato dal
    May 2005
    Messaggi
    324
    ciao... scusa se ti disturbo ancora, ma lo script che ho fatto non funzia (strano perchè è lo stesso che ho utilizzato su un altro sito e là funziona correttamente.
    boh, magari mi sono perso qualcosa per strada. comunque questo è il js:

    codice:
    function controlla(objform) {
    	var ok = 0;
    	if (objform.img.value == "") {
    		alert ("Devi indicare una immagine da caricare!");
    		var ok = 1;
    	}
    	if ((!objform.pub_ita.checked) || (!objform.pub_eng.checked) || (!objform.pub_fra.checked) || (!objform.pub_den.checked)) {
    		alert ("Devi selezionare almeno una lingua dove pubblicare l'immagine selezionata!");
    		var ok = 1;
    	}
    	if (objform.tit_news.value == "") {
    		alert ("Devi inserire un titolo alla news!");
    		var ok = 1;
    	}
    	if (objform.intro_news.value == "") {
    		alert ("Devi inserire una introduzione!");
    		var ok = 1;
    	}
    	if (objform.FCKeditor1.value == "") {
    		alert ("Devi inserire un testo!");
    		var ok = 1;
    	}
    	if (objform.lang.value == "") {
    		alert("Devi selezionare la lingua!");
    		var ok = 1;
    	}
    	if (objform.tit_novita.value == "") {
    		alert ("Devi inserire un titolo alla news!");
    		var ok = 1;
    	}
    	if (objform.intro_novita.value == "") {
    		alert ("Devi inserire una introduzione!");
    		var ok = 1;
    	}
    	if (objform.nome_cat.value == "") {
    		alert ("Devi inserire il nome della categoria!");
    		var ok = 1;
    	}
    	if (objform.art.value == "") {
    		alert ("Devi inserire il nome dell'articolo!");
    		var ok = 1;
    	}
    	if (ok == 1) {
    		return false;
    	} 
    	if (ok == 0) {
    	objform.submit();
    	}
    }
    e nel tag form lo richiamo così:
    codice:
    <form enctype="multipart/form-data" action="save.php" name="photogallery" method="post" onsubmit="javascript:return controlla(this);">
    ciao e grazie mille

  6. #6

    ..........

    Se posti anche xhtml facciamo prima
    ad occhio la riga che non va dovrebbe essere
    questa

    if (ok == 1) {
    return false;
    }
    if (ok == 0) {
    objform.submit();
    }

    if (ok == 1) {
    return false;
    }
    else
    {
    return true;
    }
    Ad ogni modo toglierei quella variabile
    ok e mettere direttamente un return false
    e alla fine un return true.


    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  7. #7
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    sbagli la condizione qui

    codice:
    if ((!objform.pub_ita.checked) || (!objform.pub_eng.checked) || (!objform.pub_fra.checked) || (!objform.pub_den.checked)) {
    
    		alert ("Devi selezionare almeno una lingua dove pubblicare l'immagine selezionata!");
    se devi selezionare almeno una lingua significa che dentro l'if ci devi entrare se non è selezionata alcuna lingua quindi

    codice:
    if ((!objform.pub_ita.checked) && (!objform.pub_eng.checked) && (!objform.pub_fra.checked) && (!objform.pub_den.checked)) {
    ...
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  8. #8
    Utente di HTML.it L'avatar di emu86
    Registrato dal
    May 2005
    Messaggi
    324
    non funziona... mi fa il submit lo stesso... ho modificato tutto come indicato da fcaldera e da whisher, ma continua a fare il submit... qualche latra idea?

    questo è il codice xhtml:

    codice:
    <form enctype="multipart/form-data" action="save.php" name="photogallery" method="post" onsubmit="javascript:return controlla(this);">
    	<table width="450" align="center" border="0" cellspacing="0" cellpadding="0" id="table_photogallery">
    		<tr>
    			<td align="center" colspan="2">
    				<div align="center" style="font-weight:bold; font-size:12pt; color:red;">
    					Inserimento immagini sulla Photogallery
    				</div></td>
    		</tr>
    		<tr>
    			<td align="center" valign="middle" colspan="2">
    				</td>
    		</tr>
    		<tr>
    			<td width="35%" align="left" valign="middle">
    				Immagine:</td>
    			<td width="65%" align="left" valign="middle">
    				<input type="file" name="img"></td>
    		</tr>
    		<tr>
    			<td width="35%" align="left" valign="middle">
    				Descrizione italiana:</td>
    			<td width="65%" align="left" valign="middle">
    				<input type="text" name="desc_ita">
    				[img]../images/ita.jpg[/img]
    				<input type="checkbox" name="pub_ita">
    				Pubblica</td>
    		</tr>
    		<tr>
    			<td width="35%" align="left" valign="middle">
    				Descrizione inglese:</td>
    			<td width="65%" align="left" valign="middle">
    				<input type="text" name="desc_eng">
    				[img]../images/eng.jpg[/img]
    				<input type="checkbox" name="pub_eng">
    				Pubblica</td>
    		</tr>
    		<tr>
    			<td width="35%" align="left" valign="middle">
    				Descrizione francese:</td>
    			<td width="65%" align="left" valign="middle">
    				<input type="text" name="desc_fra">
    				[img]../images/fra.jpg[/img]
    				<input type="checkbox" name="pub_fra">
    				Pubblica</td>
    		</tr>
    		<tr>
    			<td width="35%" align="left" valign="middle">
    				Descrizione tedesco:</td>
    			<td width="65%" align="left" valign="middle">
    				<input type="text" name="desc_den">
    				[img]../images/den.jpg[/img]
    				<input type="checkbox" name="pub_den">
    				Pubblica</td>
    		</tr>
    		<tr>
    			<td align="center" valign="middle" colspan="2">
    				</td>
    		</tr>
    		<tr>
    			<td align="center" valign="middle" colspan="2">
    				<input type="submit" name="submit" value="Inserisci">
    				.:.
    				<input type="reset" value="Reset"></td>
    		</tr>
    	</table>
    </form>

    ciao e grazie mille

  9. #9
    Ciao, copia ed incolla questo codice, dovrebbe funzionare, solo che nll'html mancano sicuramente alcuni campi (esempio: tit_news). Spero di esserti stata d'aiuto

    ------------------------------------------------------------------------------------
    <html>
    <head>
    <script>
    function controlla() {
    var objform=document.photogallery;
    var ok = true;
    if (objform.img.value == ""){
    alert ("Devi indicare una immagine da caricare!");
    var ok = false;
    }
    if ((objform.pub_ita.checked==false) && (objform.pub_eng.checked==false) && (objform.pub_fra.checked==false) && (objform.pub_den.checked==false)) {
    alert ("Devi selezionare almeno una lingua dove pubblicare l'immagine selezionata!");
    var ok = false;
    }
    if (objform.tit_news.value == "") {
    alert ("Devi inserire un titolo alla news!");
    var ok = false;
    }
    if (objform.intro_news.value == "") {
    alert ("Devi inserire una introduzione!");
    var ok = false;
    }
    if (objform.FCKeditor1.value == "") {
    alert ("Devi inserire un testo!");
    var ok = false;
    }
    if (objform.lang.value == "") {
    alert("Devi selezionare la lingua!");
    var ok = false;
    }
    if (objform.tit_novita.value == "") {
    alert ("Devi inserire un titolo alla news!");
    var ok = false;
    }
    if (objform.intro_novita.value == "") {
    alert ("Devi inserire una introduzione!");
    var ok = false;
    }
    if (objform.nome_cat.value == "") {
    alert ("Devi inserire il nome della categoria!");
    var ok = false;
    }
    if (objform.art.value == "") {
    alert ("Devi inserire il nome dell'articolo!");
    var ok = false;
    }
    objform.action="save.php";
    if(ok){objform.submit();}

    }
    </script>
    </head>
    <body>
    <form enctype="multipart/form-data" name="photogallery" method="post">
    <table width="450" align="center" border="0" cellspacing="0" cellpadding="0" id="table_photogallery">
    <tr>
    <td align="center" colspan="2">
    <div align="center" style="font-weight:bold; font-size:12pt; color:red;">
    Inserimento immagini sulla Photogallery
    </div></td>
    </tr>
    <tr>
    <td align="center" valign="middle" colspan="2">
    </td>
    </tr>
    <tr>
    <td width="35%" align="left" valign="middle">
    Immagine:</td>
    <td width="65%" align="left" valign="middle">
    <input type="file" name="img"></td>
    </tr>
    <tr>
    <td width="35%" align="left" valign="middle">
    Descrizione italiana:</td>
    <td width="65%" align="left" valign="middle">
    <input type="text" name="desc_ita">
    [img]../images/ita.jpg[/img]
    <input type="checkbox" name="pub_ita">
    Pubblica</td>
    </tr>
    <tr>
    <td width="35%" align="left" valign="middle">
    Descrizione inglese:</td>
    <td width="65%" align="left" valign="middle">
    <input type="text" name="desc_eng">
    [img]../images/eng.jpg[/img]
    <input type="checkbox" name="pub_eng">
    Pubblica</td>
    </tr>
    <tr>
    <td width="35%" align="left" valign="middle">
    Descrizione francese:</td>
    <td width="65%" align="left" valign="middle">
    <input type="text" name="desc_fra">
    [img]../images/fra.jpg[/img]
    <input type="checkbox" name="pub_fra">
    Pubblica</td>
    </tr>
    <tr>
    <td width="35%" align="left" valign="middle">
    Descrizione tedesco:</td>
    <td width="65%" align="left" valign="middle">
    <input type="text" name="desc_den">
    [img]../images/den.jpg[/img]
    <input type="checkbox" name="pub_den">
    Pubblica</td>
    </tr>
    <tr>
    <td align="center" valign="middle" colspan="2">
    </td>
    </tr>
    <tr>
    <td align="center" valign="middle" colspan="2">
    <input type="submit" value="inserisci" onClick="return controlla();">
    .:.
    <input type="reset" value="Reset"></td>
    </tr>
    </table>
    </form>
    </body>
    </html>

    --------------------------------------------------------------------------------------

  10. #10
    Utente di HTML.it L'avatar di emu86
    Registrato dal
    May 2005
    Messaggi
    324
    non funziona...

    il fatto che manchino dei campi è perchè utilizzo lo stesso script per più form per il controllo. i form sono tutti nella stessa pagina e vengono richiamati a seconda della necessità.
    quindi il controllo viene eseguito completo, solo che se il campo esiste viene controllato altrimenti no.

    forse è qui che sbaglio?

    il problema è che mi viene fatto il submit del form, non che non viene eseguito perchè mancano campi.

    ciao

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.