如何在客户端验证所有的必填项都填写了(必填项有一部分是根据用户输入的数据动态生成的).在这种情况下,我要在提交的时候验证是否全部的必填项都填了.在服务器上验证的写好了,现在要搬到客户端来验证,请问用什么办法比较好.本来想用javascript的,但是这样一来我就跳不到下一个页面了.怎么解决.代码如下: private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
btnext.Attributes.Add("onclick","javascript:return checkInput();");
}
private void btnext_ServerClick(object sender, System.EventArgs e)
{
if(report_name.Value.Trim()=="")
{
//check report_name is null
Response.Write("<Script Language=\"javascript\">\n");
Response.Write("alert(\"please enter a report name \")\n");
Response.Write("</Script>");
return;
} if(hasSameNode(report_name.Value.Trim()))
{
//check same report name
Response.Write("<Script Language=\"javascript\">\n");
Response.Write("alert(\"Has same report name\")\n");
Response.Write("</Script>");
return;
} if(select_field_list.Items.Count==0)
{
//check select data field
Response.Write("<Script Language=\"javascript\">\n");
Response.Write("alert(\"please a data field\")\n");
Response.Write("</Script>");
return;
} Session["report_name"]=report_name.Value.Trim();
Session["table_name"]=tbname_text.Value;
ArrayList list=new ArrayList();
for(int i=0;i<select_field_list.Items.Count;i++)
{
select_field_list.SelectedIndex=i;
list.Add(select_field_list.Value);
}
Session["field"]=list; Response.Redirect("step2.aspx");
}
<!--
// check if the information is null
function checkInput()
{
if(document.all("tbname_text").value=="")
{
alert("Please select or enter a table name!");
document.all("tbname_text").focus();
return false;
}
if(document.all("report_name").value=="")
{
alert("Please select or enter a report name!");
document.all("report_name").focus();
return false;
}
//if(document.all("select_field_list").Items.Count==0)
/*if(document.Form1.select_field_list.length==0)
{
alert("Please select a field!");
document.all("select_field_list").focus();
return false;
}
var i = document.Form1.select_field_list.length;
alert(i);*/
}
//-->
</script>
这样的话出问题了,首先是list控件怎么验证它是空的,其次是我验证好了无法执行private void btnext_ServerClick(object sender, System.EventArgs e).怎么解决这个问题.// 这个是另外一个页面的验证
private void btnext_Click(object sender, System.EventArgs e)
{
for(int i=0;i<txtlist.Count;i++)
{
TextBox tb=(TextBox)txtlist[i];
if(tb.Text=="")
{
Response.Write("<Script Language=\"javascript\">\n");
Response.Write("alert(\"please enter a headertext\")\n");
Response.Write("</Script>");
return;
}
headertextlist.Add(tb.Text);
} Session["headertext"]=headertextlist;
Response.Redirect("step3.aspx");
}
我现在都要搬到客户端怎么弄.谢谢大家,尽快回答啊
{
// Put user code to initialize the page here
btnext.Attributes.Add("onclick","javascript:return checkInput();");
}
private void btnext_ServerClick(object sender, System.EventArgs e)
{
if(report_name.Value.Trim()=="")
{
//check report_name is null
Response.Write("<Script Language=\"javascript\">\n");
Response.Write("alert(\"please enter a report name \")\n");
Response.Write("</Script>");
return;
} if(hasSameNode(report_name.Value.Trim()))
{
//check same report name
Response.Write("<Script Language=\"javascript\">\n");
Response.Write("alert(\"Has same report name\")\n");
Response.Write("</Script>");
return;
} if(select_field_list.Items.Count==0)
{
//check select data field
Response.Write("<Script Language=\"javascript\">\n");
Response.Write("alert(\"please a data field\")\n");
Response.Write("</Script>");
return;
} Session["report_name"]=report_name.Value.Trim();
Session["table_name"]=tbname_text.Value;
ArrayList list=new ArrayList();
for(int i=0;i<select_field_list.Items.Count;i++)
{
select_field_list.SelectedIndex=i;
list.Add(select_field_list.Value);
}
Session["field"]=list; Response.Redirect("step2.aspx");
}
<!--
// check if the information is null
function checkInput()
{
if(document.all("tbname_text").value=="")
{
alert("Please select or enter a table name!");
document.all("tbname_text").focus();
return false;
}
if(document.all("report_name").value=="")
{
alert("Please select or enter a report name!");
document.all("report_name").focus();
return false;
}
//if(document.all("select_field_list").Items.Count==0)
/*if(document.Form1.select_field_list.length==0)
{
alert("Please select a field!");
document.all("select_field_list").focus();
return false;
}
var i = document.Form1.select_field_list.length;
alert(i);*/
}
//-->
</script>
这样的话出问题了,首先是list控件怎么验证它是空的,其次是我验证好了无法执行private void btnext_ServerClick(object sender, System.EventArgs e).怎么解决这个问题.// 这个是另外一个页面的验证
private void btnext_Click(object sender, System.EventArgs e)
{
for(int i=0;i<txtlist.Count;i++)
{
TextBox tb=(TextBox)txtlist[i];
if(tb.Text=="")
{
Response.Write("<Script Language=\"javascript\">\n");
Response.Write("alert(\"please enter a headertext\")\n");
Response.Write("</Script>");
return;
}
headertextlist.Add(tb.Text);
} Session["headertext"]=headertextlist;
Response.Redirect("step3.aspx");
}
我现在都要搬到客户端怎么弄.谢谢大家,尽快回答啊
解决方案 »
- 如何判断客户终端是手机还是电脑,然后转向web的普通版和手机版啊?
- MVC生成超链接问题
- 用GridView实现孟子的DataGrid跨页多选,大家来看看错在哪里了。
- 关于Javascript客户端验证!(急)
- |M| 第二贴:刚才的不行 我们都知道DataGrid,GridView都有DataKey属性用来存储关键字,现在我用Repeater用什么来做主键
- 如何在ASP写URL转发程序
- gridview的更新问题。
- 请问:sql2000 中如何把 存储过程的执行结果,绑定到repeater上?????? 请高手细说
- 高手请进!!!!!难!!
- 参与asp.net项目开发的过来人,你们的开发过程是怎样的???
- 1000分求存储过程分页全程序
- 上传文件的最新问题,大家一起攻!
验证控件能够自动检测客户端是不是支持javascript,如果支持则自动生成客户端代码并在客户端执行验证,如果不支持验证在服务器端完成。