zl程序教程

您现在的位置是:首页 >  前端

当前栏目

asp.net自定义控件中注册Javascript问题解决方案

JavaScriptNetASP注册解决方案 问题 自定义 控件
2023-06-13 09:15:26 时间

复制代码代码如下:


protectedoverridevoidOnPreRender(EventArgse)
{

base.OnPreRender(e);
RenderJS();
}

privatevoidRenderJS()
{
if(!Page.ClientScript.IsClientScriptBlockRegistered(SCRIPT_ID))//如果还没有注册语句,则注册
{
Page.ClientScript.RegisterClientScriptBlock(this.GetType(),SCRIPT_ID,SCRIPT_CONTENT);
}

}
privateconststringSCRIPT_ID="5B7A061B93D546A7A2601D56A8738DB9";//自定义标识Guid
privateconststringSCRIPT_CONTENT="<scripttype=\"text/javascript\">\nvarCB4949501DA_checkDouble=function(data){\nvarkey=event.keyCode;\nif((key<48||key>57)&&key!=46&&key!=45){\nreturnfalse;\n}\nelse{\nif(key==46){\nif(data.indexOf(\".\")!=-1||data.length==0)\nreturnfalse;\n}\nelseif(key==45){\nif(data.indexOf(\"-\")!=-1||data.length!=0){\nreturnfalse;\n}\n}\n}\nreturntrue;\n}\nvarCB4949501DA_checkInt=function(data){\nvarkey=event.keyCode;\n\nif((key<48||key>57)&&key!=45){\nreturnfalse;\n}\nelse{\nif(key==45){\nif(data.indexOf(\"-\")!=-1||data.length!=0){\nreturnfalse;\n}\n}\nelse{\nvarinput=String.fromCharCode(key)\nvarintData=parseInt(data+input);\nif(intData>2147483647||intData<-2147483648){\nreturnfalse;\n}\n}\nreturntrue;\n}\nreturntrue;\n}\nvar<spanstyle="color:#ff0000;">CB4949501DA_checkLong</span>=function(data){\nvarkey=event.keyCode;\n\nif((key<48||key>57)&&key!=45){\nreturnfalse;\n}\nelse{\nif(key==45){\nif(data.indexOf(\"-\")!=-1||data.length!=0){\nreturnfalse;\n}\n}\nelse{\nvarinput=String.fromCharCode(key)\nvarlongstrData=data+input\nif(longstrData.length>19){\nreturnfalse;\n}\n}\n}\nreturntrue;\n}\n</script>\n";

再添加代码去调用写入的javascript函数:
复制代码代码如下:

protectedoverridevoidAddAttributesToRender(System.Web.UI.HtmlTextWriterwriter)
{

base.AddAttributesToRender(writer);
writer.AddAttribute("onkeypress","return<spanstyle="color:#ff0000;">CB4949501DA_checkLong</span>(this.value);");}

另外,引用文件是这样的。
复制代码代码如下:
if(!Page.ClientScript.IsClientScriptIncludeRegistered("引用js文件1"))//如果还没有引用,则引用
{
Page.ClientScript.RegisterClientScriptInclude("引用js文件1","JS/MYJS.JS");
}

生成的页面查看源代码效果如下:
复制代码代码如下:
<scriptsrc="JS/MYJS.JS"type="text/javascript"></script>
<scripttype="text/javascript">
varCB4949501DA_checkDouble=function(data){
varkey=event.keyCode;
if((key<48||key>57)&&key!=46&&key!=45){
returnfalse;
}
else{
if(key==46){
if(data.indexOf(".")!=-1||data.length==0)
returnfalse;
}
elseif(key==45){
if(data.indexOf("-")!=-1||data.length!=0){
returnfalse;
}
}
}
returntrue;
}
varCB4949501DA_checkInt=function(data){
varkey=event.keyCode;

if((key<48||key>57)&&key!=45){
returnfalse;
}
else{
if(key==45){
if(data.indexOf("-")!=-1||data.length!=0){
returnfalse;
}
}
else{
varinput=String.fromCharCode(key)
varintData=parseInt(data+input);
if(intData>2147483647||intData<-2147483648){
returnfalse;
}
}
returntrue;
}
returntrue;
}
varCB4949501DA_checkLong=function(data){
varkey=event.keyCode;

if((key<48||key>57)&&key!=45){
returnfalse;
}
else{
if(key==45){
if(data.indexOf("-")!=-1||data.length!=0){
returnfalse;
}
}
else{
varinput=String.fromCharCode(key)
varlongstrData=data+input
if(longstrData.length>19){
returnfalse;
}
}
}
returntrue;
}
</script>