La risposta è molto semplice. Se vai in debug o se metti un alert nella funzione, ti accorgi che la funzione non viene mai richiamata. Questo perchè l'evento onsubmit del form, viene scatenato solo da un pulsante di submit ma non dall'azione document.form.submit();
La correzione pertanto è semplice:
codice:<%@ Page Language="vb" AutoEventWireup="false" Codebehind="b.aspx.vb" Inherits="corso_apogeo.b2"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>b</title> <meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1"> <meta name="CODE_LANGUAGE" content="Visual Basic .NET 7.1"> <meta name="vs_defaultClientScript" content="JavaScript"> <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> <script language="javascript"> function controllaqta(f) { var e=f.elements; for (var i=0; i<e.length; i++) if (e[i].type=="text" && (e[i].value=="" || isNaN(e[i].value))) { alert("Inserire un valore nel campo "+e[i].name+"."); return; } f.submit(); } </script> </head> <body MS_POSITIONING="FlowLayout"> <form action="a.aspx" method="post" name="f" id="f" onsubmit="return controllaqta(this);"> <input name="fieldqta" type="text" id="fieldqta" size="2"> <input name="fieldqta1" type="text" id="fieldqta1" size="2"> <input type="hidden" value="" name="cmpidprod" /> </form> <a href="#" onClick="controllaqta(document.f); return false;" title="Aggiungi al carrello"> [img]add_carrello.gif[/img] </a> </body> </html>

Rispondi quotando