1。字符串替代方法。 function String_Replace(srcString,findString,replaceString){ return String_ReplaceB(srcString, findString, replaceString, 0); } function String_ReplaceB(expression, find, replacewith, start) { var index = expression.indexOf(find, start); if (index == -1) return expression;
var findLen = find.length; var newexp = ""; newexp = expression.substring(0, index)+(replacewith)+(expression.substring(index+findLen));
return String_ReplaceB(newexp, find, replacewith, index+1+findLen); }
2。取字符串长度方法 function String_GetLength(str){ var i,rt=0; for(i=0;i<str.length;i++) { rt++; if(str.charCodeAt(i)>256)rt++; } return rt; }
3。求浮点数方法 function getFloat(num) { var num = parseFloat(num); if(isNaN(num))num = 0; return num; }
4。求整数方法(用到浮点数取法) function getInt(num) { return parseInt(getFloat(num)); }
5。判断文本域对象是否惟空function at_checkBlank(obj,caption) { if(String_Replace(obj.value," ","")=="") { obj.select(); alert(caption+"不能为空?"); obj.focus(); return false; } return true; }
6。两个Select对象(llist,rlist)互相操作var llist = fmObj.AssignedUser;//左边已经选中项目var rlist = fmObj.WaitedUser;//右边未被选中的项目//双击右边select中的项目function AssignUser() { if(rlist.selectedIndex < 0 || rlist.selectedIndex > rlist.options.length)return; var i;
llist.options.length++; llist.options[llist.options.length-1].value = rlist.options[rlist.selectedIndex].value; llist.options[llist.options.length-1].text = rlist.options[rlist.selectedIndex].text;
for(i = rlist.selectedIndex; i < rlist.options.length - 1; i ++) { rlist.options[i].value = rlist.options[i+1].value; rlist.options[i].text = rlist.options[i+1].text; } rlist.length --;}//把右边选中的加入左边function AssignRight_AssignSelected(){ for(var i = rlist.length - 1; i >= 0; i --) { if(rlist.options[i].selected) { llist.options.length++; llist.options[llist.options.length-1].value = rlist.options[i].value; llist.options[llist.options.length-1].text = rlist.options[i].text;
for(var j = i; j < rlist.options.length - 1; j ++) { rlist.options[j].value = rlist.options[j+1].value; rlist.options[j].text = rlist.options[j+1].text; } rlist.length --; } }}//把右边所有加入左边function AssignRight_AssignAll(){ for(var i = rlist.length - 1; i >= 0; i --) { llist.options.length++; llist.options[llist.options.length-1].value = rlist.options[i].value; llist.options[llist.options.length-1].text = rlist.options[i].text;
for(var j = i; j < rlist.options.length - 1; j ++) { rlist.options[j].value = rlist.options[j+1].value; rlist.options[j].text = rlist.options[j+1].text; } rlist.length --; }}//左边select项目双击function DenyUser() { if(llist.selectedIndex < 0 || llist.selectedIndex > llist.options.length)return; var i; rlist.options.length++; rlist.options[rlist.options.length-1].value = llist.options[llist.selectedIndex].value; rlist.options[rlist.options.length-1].text = llist.options[llist.selectedIndex].text; for(i = llist.selectedIndex; i < llist.options.length - 1; i ++) { llist.options[i].value = llist.options[i+1].value; llist.options[i].text = llist.options[i+1].text; } llist.length --;}//把左边选中的项目加入右边function AssignRight_DenySelected() { for(var i = llist.length - 1; i >= 0; i --) { if(llist.options[i].selected) { rlist.options.length++; rlist.options[rlist.options.length-1].value = llist.options[i].value; rlist.options[rlist.options.length-1].text = llist.options[i].text; for(j = llist.selectedIndex; j < llist.options.length - 1; j ++) { llist.options[j].value = llist.options[j+1].value; llist.options[j].text = llist.options[j+1].text; } llist.length --; } }}//左边所有项目加入右边function AssignRight_DenyAll() { for(var i = llist.length - 1; i >= 0; i --) { rlist.options.length++; rlist.options[rlist.options.length-1].value = llist.options[i].value; rlist.options[rlist.options.length-1].text = llist.options[i].text; for(j = i; j < llist.options.length - 1; j ++) { llist.options[j].value = llist.options[j+1].value; llist.options[j].text = llist.options[j+1].text; } llist.length --; }}
7。返回两个时间的天数:要求比较的日期的格式为:YYYY-MM-DD*****************************/function getDays(strDateStart,strDateEnd){ var strSeparator = "-"; //日期分隔符 var strDateArrayStart; var strDateArrayEnd; var intDay; strDateArrayStart = strDateStart.split(strSeparator); strDateArrayEnd = strDateEnd.split(strSeparator); var strDateS = new Date(strDateArrayStart[0] + "/" + strDateArrayStart[1] + "/" + strDateArrayStart[2]); var strDateE = new Date(strDateArrayEnd[0] + "/" + strDateArrayEnd[1] + "/" + strDateArrayEnd[2]); intDay = (strDateE-strDateS)/(1000*3600*24); if(isNaN(intDay)==false) return intDay; else return -1;}
