js验证asp.net(c#)表单出现错误求解,asp.net中如何调用js?js如何获取asp.net的表单元素值?
表单验证代码如下(这是为asp写的):<SCRIPTLANGUAGE="JavaScript">varflag=[0];var$=function(tagName){re...
表单验证代码如下(这是为asp写的):
<SCRIPT LANGUAGE="JavaScript">
var flag=[0];
var $=function(tagName){
return document.getElementsByTagName(tagName);
}
var $div=function(tagName){
return document.getElementById(tagName+"_txt");
}
var $val=function(tagName){
return document.getElementById(tagName);
}
var thisname;
var thisinfo;
function getinfo(){
thisname=event.srcElement.name;
thisinfo=$val(thisname).value;
}
//----------电话检测
function check_phone(){
getinfo();
var Tel=/(^[\d]{3,4}-[\d]{7,8}$)|(^[\d]{7,8}$)|(^[\d]{10,12}$)|(^0{0,1}13[0-9]{9}$)/
var b_Tel=Tel.test(thisinfo)
if(b_Tel){
$div(thisname).innerHTML="<img src='images/reg_yesok.gif'/> 正确!";
$div(thisname).className="rig";
flag[0]=1;
check_data();
}
else{
$div(thisname).innerHTML="<img src='images/reg_yesno.gif'/> 电话格式错误(010-88888888)!";
$div(thisname).className="err";
flag[0]=0;
check_data();
}
}
//---------检查数据,使提交按钮是否生效
function check_data(){
if(flag[0]==1){
$val("submit").disabled=false;
}
else{
$val("submit").disabled=true;
}
}
</SCRIPT>
服务器端部分代码如下:
<td class="tableHeadLeft">固定电话:</td>
<td><asp:TextBox ID="lx4" runat="server" onblur="check_phone()"></asp:TextBox></td>
<TD><div id="lx4_txt" class="">*</div></TD>
<asp:Button ID="Button1" runat="server" Text="确定提交订单" CssClass="btn1" onclick="Button1_Click" />
生成的html如下:
<td class="tableHeadLeft">固定电话:</td>
<td><input id="lx4" type="text" onblur="check_phone()" name="lx4"></td>
<td><div id="lx4_txt" class="">*</div></td>
<input id="Button1" class="btn1" type="submit" value="确定提交订单" name="Button1">
执行后出现“缺少对象”错误,直接把以上代码存为html就能看到结果。
想问一下以上的程序有什么错误?
是不是这么用的? 展开
<SCRIPT LANGUAGE="JavaScript">
var flag=[0];
var $=function(tagName){
return document.getElementsByTagName(tagName);
}
var $div=function(tagName){
return document.getElementById(tagName+"_txt");
}
var $val=function(tagName){
return document.getElementById(tagName);
}
var thisname;
var thisinfo;
function getinfo(){
thisname=event.srcElement.name;
thisinfo=$val(thisname).value;
}
//----------电话检测
function check_phone(){
getinfo();
var Tel=/(^[\d]{3,4}-[\d]{7,8}$)|(^[\d]{7,8}$)|(^[\d]{10,12}$)|(^0{0,1}13[0-9]{9}$)/
var b_Tel=Tel.test(thisinfo)
if(b_Tel){
$div(thisname).innerHTML="<img src='images/reg_yesok.gif'/> 正确!";
$div(thisname).className="rig";
flag[0]=1;
check_data();
}
else{
$div(thisname).innerHTML="<img src='images/reg_yesno.gif'/> 电话格式错误(010-88888888)!";
$div(thisname).className="err";
flag[0]=0;
check_data();
}
}
//---------检查数据,使提交按钮是否生效
function check_data(){
if(flag[0]==1){
$val("submit").disabled=false;
}
else{
$val("submit").disabled=true;
}
}
</SCRIPT>
服务器端部分代码如下:
<td class="tableHeadLeft">固定电话:</td>
<td><asp:TextBox ID="lx4" runat="server" onblur="check_phone()"></asp:TextBox></td>
<TD><div id="lx4_txt" class="">*</div></TD>
<asp:Button ID="Button1" runat="server" Text="确定提交订单" CssClass="btn1" onclick="Button1_Click" />
生成的html如下:
<td class="tableHeadLeft">固定电话:</td>
<td><input id="lx4" type="text" onblur="check_phone()" name="lx4"></td>
<td><div id="lx4_txt" class="">*</div></td>
<input id="Button1" class="btn1" type="submit" value="确定提交订单" name="Button1">
执行后出现“缺少对象”错误,直接把以上代码存为html就能看到结果。
想问一下以上的程序有什么错误?
是不是这么用的? 展开
展开全部
给服务器控件加客户端事件,不可以像这样
<asp:TextBox ID="lx4" runat="server" onblur="check_phone()"></asp:TextBox>
应该在.cs文件中的page_load中加上
lx4.Attributes["onblur"]="check_phone()";
再试
<asp:TextBox ID="lx4" runat="server" onblur="check_phone()"></asp:TextBox>
应该在.cs文件中的page_load中加上
lx4.Attributes["onblur"]="check_phone()";
再试
更多追问追答
追问
那如果我就在本文件中,如“default.aspx”中使用js,而不是在cs文件中用,该怎么做呢?
追答
jquery 库不知道你用过没有,在这里我以jquery 库操作为例
//首先在Dom加载后,给文本框加上onblur事件
$(function(){
$('#').blur(function(){
//....此处处理失去焦点时的判断逻辑
});
});
再试
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询