Ciao a tutti.
Premesso che sono alle prime armi con JavaScript,
sto cercando di scrivere uno script che prenda i dati dai campi di un form e, se almeno uno di essi ha scritto qualcosa dentro, lo invia a un altra pagina con un altro form.
il problema è che secondo lui è corretto,
infatti per lui non sono ="" ma addirittura undefined, come si evince dall'alert che ho messo all'inizio
grazie
ecco il codice
codice:
...
<script type="text/javascript">
function ControlloFiltri()
{
alert (frmFilter.QtyMax.Value)
var corretto = 0
if (frmFilter.DataMin.Value == "")
corretto = 1;
if (frmFilter.DataMax.Value != "")
corretto = 1;
if (frmFilter.QtyMin.Value != "")
corretto = 1;
if (frmFilter.QtyMax.Value != "")
corretto = 1;
if (frmFilter.QtyMax.Value != "")
corretto = 1;
if (corretto==1){
var str = ""
if (DataMin != "")
str = str + "'DataMin':'" + frmFilter.DataMin.Value + "',";
if (DataMax != "")
str = str + "'DataMax':'" + frmFilter.DataMax.Value + "',";
if (QtyMin != "")
str = str + "'QtyMin':'" + frmFilter.QtyMin.Value + "',";
if (QtyMax != "")
str = str + "'QtyMax':'" + frmFilter.QtyMax.Value + "',";
if (Cliente != "")
str = str + "'Cliente':'" + frmFilter.Cliente.Value + "',";
str = "{" + str + "}"
InviaFiltro(str)
}
else
document.frmFilter.Errori.Value = "Inserire correttamente i dati";
}
function InviaFiltro(params)
{
var form = document.createElement("form");
form.setAttribute("method", "post");
form.setAttribute("action", "index.asp?act=filter.done");
for(var key in params) {
var hiddenField = document.createElement("input");
hiddenField.setAttribute("type", "hidden");
hiddenField.setAttribute("name", key);
hiddenField.setAttribute("value", params[key]);
form.appendChild(hiddenField);
}
document.body.appendChild(form);
form.submit();
return(0)
}
</script>
...
<form name="frmFilter" method="post" action="index.asp?act=filter.done">
<table>
<tr>
<td>Data emissione tra</td>
<td><input type="text" name="DataMin" size="20"></td>
<td align="center">e</td>
<td><input type="text" name="DataMax" size="20"></td>
<td rowspan="3">
<textarea name="Errori" rows="3" cols="12" readonly=true WRAP="virtual">
</textarea>
</td>
</tr>
<tr>
<td>Cliente</td>
<td>
<select name="Cliente">
<option selected="selected" value="">Scegli</option>
<%
rs.Open "Select TbClienti.Denominazione, TbClienti.ID FROM TbClienti ORDER BY Denominazione", cn, 1
Do Until rs.EOF
%>
<option value="<%=rs("ID")%>"><%=rs("Denominazione")%></option>
<%
rs.MoveNext
Loop
rs.Close
%>
</select>
</td>
</tr>
<tr>
<td>Quantita tra</td>
<td><input type="text" name="QtyMin" size="20"></td>
<td align="center">e</td>
<td><input type="text" name="QtyMax" size="20"></td>
</tr>
<tr>
<td colspan="4" align="center">
<input type="button" value="Filtra" onclick="ControlloFiltri()">
</td>
</tr>
</table>
</form>
...