Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di Fichico
    Registrato dal
    Nov 2002
    residenza
    Bologna
    Messaggi
    581

    Form con submit che invia per stampa in popup non funziona :(

    Ho una pagina con un form che contiene dei checkbox.
    Quando si clicca sul submit del form, devo fare le seguenti verifiche:
    1) verificare che almeno un checkbox sia selezionato
    2) recuperare i value dei checkbox selezionati ed inviarli ad uno script php che restituira OK o KO
    3) in caso di OK, fare il submit del form in una finestra popup che all'apertura mostrerà le opzioni di stampa

    I controlli sono praticamente tutti giusti, solo che non mi apre la finestra in popup e non so più da che parte sbattere la testa

    questo il codice incriminato:
    pagina col form:
    codice:
    <form id="risultati" name="risultati" action="richiesta_proposte_stampa.php" method="post">
    ... la serie di checkbox ognuno su una riga
    <input type="checkbox" class="id_proposta" name="id_proposta[]" value="VALORE_NUMERICO_1">
    <input type="checkbox" class="id_proposta" name="id_proposta[]" value="VALORE_NUMERICO_1">
    ...
    <input type="checkbox" class="id_proposta" name="id_proposta[]" value="VALORE_NUMERICO_N">
    <input type="hidden" id="id_richiesta" name="id_richiesta" value="VAL_NUM">
    <input type="hidden" id="str_id_proposte" name="str_id_proposte" value="">
    <input type=\submit" name="Submit" value="Stampa selezionati">
    </form>
    questo il js:
    codice:
    	// apertura form risultati in popup
        $('#risultati').submit(function() {
    		var arr_id_proposte = new Array();
    		var proposte_scelte = $('.id_proposta');
    		for(i=0; i<proposte_scelte.length; i++){
    			if (proposte_scelte[i].checked)
    				arr_id_proposte.push(proposte_scelte[i].getAttribute('value'));
    		}
    
    		var proposte = arr_id_proposte.toString();
    		var richiesta = $('#proposte_associate_id_richiesta').attr('value');
    		
    		if(proposte==''){
    			alert ("Nessuna proposta selezionata");
    			return false;
    		}
    
    		$('#str_id_proposte').val(proposte);
    
    		$.post("../admin/form.php", {p:proposte, r:richiesta, o:20}, function(data){
    			if(data=="OK"){
    		        window.open('', 'risultati_popup', 'width=800,height=700,resizeable,scrollbars');
    		        $('#risultati').target = 'risultati_popup';
    		        return true;
    			}else
    			      alert("Si e' verificato un errore, riprova più tardi")	;
    });
    		
    		return false;
        });

    qualcuno mi aiuta facendo aprire in popup il form al momento del submit e dopo aver superato i controlli js?

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    I controlli sono praticamente tutti giusti, solo che non mi apre la finestra in popup e non so più da che parte sbattere la testa
    Quindi vedi l'alert "Si e' verificato un errore, riprova più tardi"?

  3. #3
    Utente di HTML.it L'avatar di Fichico
    Registrato dal
    Nov 2002
    residenza
    Bologna
    Messaggi
    581
    prima vedevo gli alert precedenti fino all'istruzione $.post

    ora ho provato e, in caso di KO, mi da il messaggio che dicevi tu

    L'ho un attimo cambiato il codice con:
    codice:
    		$.post("../admin/form.php", {p:proposte, r:richiesta, o:20}, function(data){
    			if(data=="OK"){
    		        window.open('', 'risultati_popup', 'width=800,height=700,resizeable,scrollbars');
    		        $('#risultati').target = 'risultati_popup';
    				alert("OK")	;
    		        //return true;
    			}else
    				alert("Si e' verificato un errore, riprova più tardi")	;
    		});
    in questo caso, mi da sia l'alert ok che ko, mi apre una popup, ma non mi fa il submit del form nella popup

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    prova cosi:

    - elimina questa riga $('#risultati').target = 'risultati_popup';
    - inserisci nel tag html form target="risultati_popup"

  5. #5
    Utente di HTML.it L'avatar di Fichico
    Registrato dal
    Nov 2002
    residenza
    Bologna
    Messaggi
    581
    purtroppo non cambia nulla

    la cosa strana è che un sacco di altre popup mi ricevon dati da form in questo modo

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    devi eliminare anche il return false alla fine seno il submit non avviene

  7. #7
    Utente di HTML.it L'avatar di Fichico
    Registrato dal
    Nov 2002
    residenza
    Bologna
    Messaggi
    581
    ho eliminato il return false come mi hai indicato.
    ho anche aggiunto alla fine un submit di un altro form nella pagina perchè mi deve ricaricare i risultati in quanto quelli che vanno stampati non devono più apparire

    ora la cosa strana è che sembra funzionare, ma non mi apre una popup bensì una nuova scheda (FF, chrome)

    ecco il codice con le ultime correzioni
    codice:
    	// apertura form risultati in popup
        $('#risultati').submit(function() {
    		var arr_id_proposte = new Array();
    		var proposte_scelte = $('.id_proposta');
    		for(i=0; i<proposte_scelte.length; i++){
    			if (proposte_scelte[i].checked)
    				arr_id_proposte.push(proposte_scelte[i].getAttribute('value'));
    		}
    
    		var proposte = arr_id_proposte.toString();
    		var richiesta = $('#risultati_id_richiesta').attr('value');
    		
    		if(proposte==''){
    			alert ("Nessuna proposta selezionata");
    			return false;
    		}
    
    		$('#str_id_proposte').val(proposte);
    
    		$.post("../admin/form.php", {p:proposte, r:richiesta, o:20}, function(data){
    			if(data=="OK")
    		        window.open('', 'risultati_popup', 'width=800,height=700,resizeable,scrollbars');
    			else{
    				alert("Si e' verificato un errore, riprova più tardi");
    				return false;
    			}
    		});
            $('#ricerca').submit();
        });

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.