NumberEditor
来源:互联网 发布:夏普网络扫描设置 编辑:程序博客网 时间:2024/05/16 07:20
using System;
using System.Text;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.ComponentModel;
namespace binibn
{
/// <summary>
/// NumberEditor 的摘要说明。
/// </summary>
public class NumberEditor : System.Web.UI.WebControls.TextBox
{
private const string SCP_NUMBER_ONLY_SCRIPT_ID="{29FD7A41-49FD_4fc4_AFA9-6A0B875A1A51}";
private const string SCP_NUMBER_ONLY_HOOK="return NumberEditor_KeyPress_Handle(this);";
private const string SCP_NUMBER_ONLY_SCRIPT=
"<script>/n"+
"function NumberEditor_KeyPress_Handle(ctr1)/n"+
"{/n"+
"if(event.keyCode==13)/n"+
"{/n"+
"return true;/n"+
"}/n"+
"if(event.keyCode<48 || event.keyCode>57)/n"+
"{/n"+
"return false;/n"+
"}/n"+
"else/n"+
"{/n"+
"return true;/n"+
"}/n"+
"}/n"+
"</script>/n";
//这段是在DW中写好复制过来再加上/n的
private void RenderJavaScript()
{
if(!Page.IsClientScriptBlockRegistered(SCP_NUMBER_ONLY_SCRIPT_ID))
{
Page.RegisterClientScriptBlock(SCP_NUMBER_ONLY_SCRIPT_ID,SCP_NUMBER_ONLY_SCRIPT);
//上面的这一句又跟
//Page.RegisterClientScriptBlock(SCP_NUMBER_ONLY_SCRIPT_ID,string(SCP_NUMBER_ONLY_SCRIPT,base.ID)); 不同
}
}
protected override void AddAttributesToRender(HtmlTextWriter writer)
{
base.AddAttributesToRender(writer);
writer.AddAttribute("OnKeyPress",SCP_NUMBER_ONLY_HOOK);
}
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
RenderJavaScript();
}
public NumberEditor():base()
{
}
}
}