软讯网络 > 编程语言 > .NET > C#.NET > AJAX实现TEXTBOX数据验证(2)
【标 题】:AJAX实现TEXTBOX数据验证(2)
【关键字】:
AJAX,TEXTBOX
【来 源】:http://blog.csdn.net/hufengwen/archive/2006/12/21/1451786.aspx
AJAX实现TEXTBOX数据验证(2)
CS:
private void Page_Load(object sender, System.EventArgs e)
{
AjaxPro.Utility.RegisterTypeForAjax(typeof(CODetailShipmentToNew));
}
[AjaxPro.AjaxMethod]
public ArrayList CheckDigitCs(string id,string value)
{
string error ="";
string errorMessage;
error = numberIsRight(value);
errorMessage = errorDisposeStr(error);
ArrayList items = new ArrayList();
items.Add(id);
items.Add(errorMessage);
return items ;
}
private string numberIsRight(string value)
{
string errorCode = "";
HtmlInputText hit = new HtmlInputText();
if(!isDigit(value))
{
errorCode = "WECO0228";
return errorCode;
}
return errorCode;
}
private bool isDigit(string orderQty)
{
return (Regex.IsMatch(orderQty, @"^[0-9]+|[0-9]+.?[0-9]+$"));
}
private string errorDisposeStr(string errorCode)
{
Rhombus.Common.Error errs = new Rhombus.Common.Error(errorCode);
string xmlFile = ConfigurationSettings.AppSettings["FunctionMappingFile"];
Rhombus2.MasterFileService.MasterFile MFService = new Rhombus2.MasterFileService.MasterFile();
string moduleName = MFService.getXmlElementValue(xmlFile,"COItemModify");
string errorMessage ="";
string security = errs.getSeverity(moduleName);
switch(security)
{
case "1":
errorMessage = errs.pErrorCode + ":"+ "INFORMATION:" + errs.getErrorInfo();
break;
case "2":
errorMessage = errs.pErrorCode + ":" + "WARNING:" + errs.getErrorInfo();
break;
case "3":
errorMessage = errs.pErrorCode + ":" + "ERROR:" + errs.getErrorInfo();
break;
default:
break;
}
return errorMessage;
}
HTML:
<script language="jscript">
function CheckDigitJs(id,value)
{
Rhombus2.CO.Page.CODetailShipmentToNew.CheckDigitCs(id,value,CheckDigit_callback);
}
function CheckDigit_callback(res)
{
var value = res.value;
var id = value[0];
var textID = document.getElementById(id);
var errorMessage = value[1];
if (errorMessage != "")
{
alert(errorMessage);
document.getElementById(id).value="0.0000";
document.getElementById(id).focus();
}
else
{
if(document.getElementById(id).value!="0.0000")
{
var value = document.getElementById(id).value;
document.getElementById(id).value = FormatNumber(value,4);
}
}
}
function FormatNumber(srcStr,nAfterDot)
{
var srcStr,nAfterDot;
var resultStr,nTen;
srcStr = ""+srcStr+"";
strLen = srcStr.length;
dotPos = srcStr.indexOf(".",0);
if (dotPos == -1){
resultStr = srcStr+".";
for (i=0;i<nAfterDot;i++){
resultStr = resultStr+"0";
}
return resultStr;
}
else{
if ((strLen - dotPos - 1) >= nAfterDot){
nAfter = dotPos + nAfterDot + 1;
nTen =1;
for(j=0;j<nAfterDot;j++){
nTen = nTen*10;
}
resultStr = Math.round(parseFloat(srcStr)*nTen)/nTen;
return resultStr;
}
else{
resultStr = srcStr;
for (i=0;i<(nAfterDot - strLen + dotPos + 1);i++){
resultStr = resultStr+"0";
}
return resultStr;
}
}
}
</script>
....................
<TD align="left" width="20%"><INPUT class="text2" id="txt_m1count" onblur="CheckDigitJs(this.id,this.value)" style="WIDTH: 100%" type="text" name="txt_m1count" runat="server"></TD>