Ciao a tutti.
Ho un problema che non riesco a risolvere ma soprattutto a capire la causa.
All'invio del form postato di seguito dovrebbe visualizzarsi la classica immagine `Please wait`, invece quando invio il form prima si attiva la alert 'The server script has now completed' e quando clicco su `ok` si apre la pagina che processa i dati lato server.
Nell'onsubmit del form ho previsto la funzione di controllo `atLeastOneChecked` che quando è soddisfatta dovrebbe richiamare la funzione `longcall();`.
Questo accade ma non come mi aspettavo... potete darmi un suggerimento?
Grazie mille!
codice:<html> <head> <meta http-equiv="Content-Language" content="it"> <meta name="GENERATOR" content="Microsoft FrontPage 6.0"> <meta name="ProgId" content="FrontPage.Editor.Document"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <title>Test</title> <script language="javascript" type="text/javascript"> // <!CDATA[ function loadXMLDoc() { try { req = new XMLHttpRequest(); } catch (err1) { try { req = new ActiveXObject("Msxml12.XMLHTTP"); } catch (err2) { try { req = new ActiveXObject("Microsoft.XMLHTTP"); } catch (err3) { req = false; } } } return req; } var http = loadXMLDoc() function handleHttpResponse() { if (http.readyState == 4 && http.status==200) { document.getElementById('wait').style.visibility = "hidden"; alert('The server script has now completed'); } else { document.getElementById('wait').style.visibility = "visible"; } } function longcall() { myRand=parseInt(Math.random()*999999); http.open("POST","_inc_upd.asp",true); http.onreadystatechange = handleHttpResponse; http.send(); } function PopUp() { var w = 500; var h = 300; var l = Math.floor((screen.width-w)/2); var t = Math.floor((screen.height-h)/2); finestra=window.open('_inc_pagina_commento.asp','','width=' + w + ',height='+ h + ',top=' + t + ',left=' + l+',scrollbars=no,menubar=no,toolbar=no,status=no'); } function atLeastOneChecked(form) { var inputs = form.getElementsByTagName('input'); var i = inputs.length; while (i--) { if(inputs[i].checked && !inputs[i].disabled) if(confirm("Confermi?.")) { PopUp(); return false; } else { longcall(); return true; } } alert("Stop!") return false; } // ]]> </script> ... <form name=frmTest action="_inc_upd.asp" method=POST onsubmit="return atLeastOneChecked(this)"> <input type=checkbox name=chkParent25 value=21118> </p> <input type=checkbox name=chkParent26 value=21119> </p> <input type="image" src="/images/assegnazione_button.gif" border="0"></p> </form> <div id="wait" style="background-color:white;position:absolute;top:240px;left:360px;width:70px;height:50px;visibility:hidden;border: 1px solid black;padding:20px;"> [img]/images/ajax-loader.gif[/img] Please wait... </div> ...

Rispondi quotando
