1、B/S开发中限制域的输入类型的几个技巧

几个有简单的方法实现域的内容输入控制的方法

1)让域只能使用英文输入法 在域的样式中填上ime-mode:disabled用户就不能输入中文了

2)在表格的其它附签中加上style="word-break:break-all"就可以防止用户输入过长的英文破坏表格的样式


3)只充许域输入数字的简单方法,在域的onkeyup和onafterpaste事件上加上下面的正则表达式即可
οnkeyup="this.value=this.value.replace(//D/g,'')" onafterpaste="this.value=this.value.replace(//D/g,'')"

4)去掉域中输入的所有空格函数
function CheckStr(getStr)
{
var tt=getStr;
var ss=/[/s*$]/g;
var cc=tt.replace(ss,"")
alert(cc)
}

2、判断RTF中的内容是否为数字

function isNumber(val)
{
str="0123456789-";
len=val.length;
i=0;
while(i<len)
{
  c=val.charAt(i);
  if(str.indexOf(c)==-1) break;
  i++;
}
if(i==len) return true;
else return false;
}

在onChange和onKeyUp两个事件中进行检查

3、JS中去掉字符串空格

//去掉字串左边的空格
function lTrim(str)
{
if (str.charAt(0) == " "||str.charAt(0) == " ")
{
//如果字串左边第一个字符为空格
str = str.slice(1);//将空格从字串中去掉
//这一句也可改成 str = str.substring(1, str.length);
str = lTrim(str); //递归调用
}
return str;
}

//去掉字串右边的空格
function rTrim(str)
{
var iLength;

iLength = str.length;
if (str.charAt(iLength - 1) == " "||str.charAt(iLength - 1) == " ")
{
//如果字串右边第一个字符为空格
str = str.slice(0, iLength - 1);//将空格从字串中去掉
//这一句也可改成 str = str.substring(0, iLength - 1);
str = rTrim(str); //递归调用
}
return str;
}

//去掉字串两边的空格
function trim(str)
{
return lTrim(rTrim(str));
}
4、判断RTF是否为空

公式判断:

@Command([EditGotoField];"Body");  
@Command([EditSelectAll]);  
@If(@IsError(@Command([EditDeselectAll]));@Return(@Prompt([OK];"提示";"BODY域不能为空!"));"");  

脚本判断:

Function  IsRTFNull(rtfield  As  String)  As  Integer  
            
           On  Error  Goto  Errhandle  
            
           currentfield  =  uidoc.CurrentField  
            
           Call  uidoc.GotoField(rtfield)  
           Call  uidoc.SelectAll  
           Call  uidoc.DeselectAll  
            
           If  currentfield  <>  ""  Then  
                       Call  uidoc.GotoField(currentfield)                          
           End  If  
            
           IsRTFNull  =  False  
           Exit  Function  
            
Errhandle:  
           Select  Case  Err  
           Case  4407  
                       Call  uidoc.GotoField(rtfield)                                      
                       IsRTFNull  =  True  
                       Exit  Function  
           Case  Else  
                       Error  Err  
           End  Select  
            
End  Function

=======================================================================================================
1。日期比较函数:function dateCompare(s,d)
2。获得url参数:function getParameter(url,para)
3。设置选择框选项:function getParameter(str,oSelect)
=======================================================================================================
//日期比较
function dateCompare(s,d)
{
     var st = new Date(s.replace("-",",")).getTime();
     var en = new Date(d.replace("-",",")).getTime();
     if (st<en)
     {
        return 1
     }
     else if(st==en)
     {
        return 1;
     }
    else
     {
        return 0;
     }
}
//获得url参数
function getParameter(url,para)
{
        var path = url.substring(url.lastIndexOf("?")+1,url.length);
        var tmpArray = path.split("&");
        for (i=0;i<tmpArray.length;i++)
        {
                if (tmpArray .indexOf(para) != -1)
                {
                        var result = tmpArray.substring(tmpArray.indexOf("=")+1,tmpArray.length);
                        return result;
                }
        }
        return "";
}

//设置选择框选项
/*str为选项字符串,多个选项之间以分号分隔
*oSelect为列表框的id,注意,直接使用id,不加分号
*作者:zhaoxyu
*时间:2007-07-10
*/
function addOptions(str,oSelect){
  if (oSelect.hasChildNodes){
          var len = oSelect.childNodes.length;
          for(var j=0;j<len;j++){
                  oSelect.removeChild(oSelect.childNodes(0));
          }
  }
  var tmpArr = str.split(';');
  var oOption;
  for(var i=0;i<tmpArr.length;i++){
      oOption = document.createElement("OPTION");
      oSelect.options.add(oOption);
      oOption.innerText = tmpArr;
      oOption.value = tmpArr;
  }
  return false;
}