?? pub.js
字號:
var IS_NULL = 0X80; // 10000000
var IS_FULL = 0X40; // 01000000
var IS_HALF = 0X20; // 00100000
var IS_ASCII = 0X10; // 00010000
var IS_NUM = 0X08; // 00001000
var IS_DATE = 0X04; // 00000100
var IS_PHONE = 0X02; // 00000010
var IS_EMAIL = 0X01; // 00000001
var IS_NOT_NULL = 0X00; // 00000000
/****************************************一、彈出窗口*************************************************/
//1.日期選擇窗口
function fPopUpCalendarDlg(ctrlobj) {
var showx = event.screenX - event.offsetX; // + deltaX;
var showy = event.screenY - event.offsetY + 18; // + deltaY;
var newWINwidth = 210 + 4 + 18;
var retval = window.showModalDialog("../../bg/pub/CalendarDlg.htm", "","dialogWidth:197px; dialogHeight:210px; dialogLeft:" + showx +"px; dialogTop:" + showy +"px; status:no; directories:yes;scrollbars:no;Resizable=no; ");
if (retval != null) {
ctrlobj.value = retval;
}
}
//Function trim a string
function trim(Str , Flag)
{
Str = ""+Str;
if( Flag == "l" || Flag == "L" )/*trim left side only*/
{
RegularExp = /^\s+/gi;
return Str.replace( RegularExp,"" );
}
else if( Flag == "r" || Flag == "R" )/*trim right side only*/
{
RegularExp = /\s+$/gi;
return Str.replace( RegularExp,"" );
}
else/*defautly, trim both left and right side*/
{
RegularExp = /^\s+|\s+$/gi;
return Str.replace( RegularExp,"" );
}
}
/****************************************二、控制鍵盤錄入*************************************************/
//1.控制鍵盤輸入,只允許數(shù)字鍵錄入整數(shù)
function intOnly() {
if (! ( (window.event.keyCode >= 48) && (window.event.keyCode <= 57)))
{
window.event.keyCode = 0;
}
}
//2.控制鍵盤輸入,只允許數(shù)字鍵錄入小數(shù)和整數(shù)
function numberOnly() {
if (! ( ( (window.event.keyCode >= 48) && (window.event.keyCode <= 57)) ||
(window.event.keyCode == 13) || (window.event.keyCode == 46)))
{
window.event.keyCode = 0;
}
}
/****************************************三、數(shù)字的格式化操作函數(shù)*************************************************/
//取浮點(diǎn)數(shù),可以定義小數(shù)點(diǎn)后精確的位數(shù),并且四舍五入。
function getFloat(number, reserve) {
var index = number.indexOf(".");
if (index == -1) {
return number;
}
else {
var index = index + reserve + 1;
if (index >= number.length) {
return number;
}
else {
var temp = number.charAt(index);
number = number.substring(0, index);
if (parseInt(temp) < 5) {
return number;
}else {
for (var i = index - 1; i >= 0; i--) {
if (number.charAt(i) == ".") {
continue;
}
var value = parseInt(number.charAt(i));
value++;
if (value != 10) {
number = replace(number, i, value);
return number;
}
else {
number = replace(number, i, "0");
if (i == 0) {
number = "1" + number;
}
}
}
return parseFloat(number);
}
}
}
}
function replace(number, i, value) {
var newnumber = number.substring(0, i) + value;
newnumber = newnumber + number.substring(i + 1, number.length);
return newnumber;
}
/****************************************四、字符串的格式化操作函數(shù)*************************************************/
//1.子字符串替換
function replaceStr(str, sFnd, sRep) {
var sTmp = "";
var endIndex = 0;
var beginIndex = 0;
var len = sFnd.length; while (endIndex >= 0) {
var endIndex = str.indexOf(sFnd, beginIndex);
if (endIndex >= 0) {
sTmp += str.substring(beginIndex, endIndex) + sRep;
beginIndex = endIndex + len;
}
else if (beginIndex >= 0) {
sTmp += str.substring(beginIndex);
break;
}
}
return sTmp;
}
//2.單雙引號替換(基于子字符串替換函數(shù))
function replaceCommas(str) {
if (str == "") {
return str;
}
str = replaceStr(str, "'", "'");
//str = replaceStr(str, '"', '"');
return str;
}
//3.去掉字符串中的給定字符
function removeChar(str, c) {
if (str == null || str == "") {
return str;
}
var i = str.indexOf(c); while (i >= 0) {
str = str.substring(0, i) + str.substring(i + 1, str.length);
i = str.indexOf(c);
}
return str;
}
/****************************************五、日期的格式化操作函數(shù)*************************************************/
//1.年月日組合成格式化的字符串
function formatDate(sYear, sMonth, sDay) {
if (sMonth.length == 1) {
sMonth = "0" + sMonth;
}
if (sDay.length == 1) {
sDay = "0" + sDay;
}
return sYear + sMonth + sDay;
}
//2.日期型轉(zhuǎn)換為格式化的字符串
function convDate(sDate, sSep) {
var pos = 0;
var str = sDate;
var len = str.length;
if ( (len < 8) || (len > 10)) {
return str;
}
else if (str.indexOf(sSep) == 4) {
pos = str.indexOf(sSep, 5);
if (pos == 6) {
if (len == 8) {
return str.substring(0, 4) + "0" + str.substring(5, 6) + "0" +
str.substring(7, 8);
}
else {
return str.substring(0, 4) + "0" + str.substring(5, 6) +
str.substring(7, 9);
}
}
else if (pos == 7) {
if (len == 9) {
return str.substring(0, 4) + str.substring(5, 7) + "0" +
str.substring(8, 9);
}
else {
return str.substring(0, 4) + str.substring(5, 7) + str.substring(8, 10);
}
}
else {
return str;
}
}
else {
return str;
}
}
//3.判斷是否為閏年
function checkLeapYear(year) {
if ( ( (year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)) {
return true;
}
return false;
}
//4.獲得格式化的系統(tǒng)時間
function getSysDate() {
var today = new Date();
var nYear = today.getYear();
var nMonth = today.getMonth() + 1;
var nDay = today.getDate();
var sToday = "";
if (nYear < 1000) {
sToday += "" + (1900 + nYear);
}
else {
sToday += nYear;
}
if (nMonth < 10) {
sToday += "0" + nMonth;
}
else {
sToday += nMonth;
}
if (nDay < 10) {
sToday += "0" + nDay;
}
else {
sToday += nDay;
}
return sToday;
}
//5.比較兩個日期的大小
function compareDateStr(dateStr1, dateStr2) {
dateStr1 = convDate(dateStr1, "/");
dateStr2 = convDate(dateStr2, "/");
if (dateStr1 > dateStr2) {
return 1;
}
else if (dateStr1 == dateStr2) {
return 0;
}
else {
return -1;
}
return dateStr1
}
//6.判斷是否小于當(dāng)前時間
function checkBeforeDate(str) {
str = convDate(str, "/");
if (str.length == 6) {
str += "01";
}
if (str >= getSysDate()) {
return false;
}
return true;
}
//7.判斷是否等于當(dāng)前時間
function checkIsToday(str) {
str = convDate(str, "/");
if (str.length == 6) {
str += "01";
}
if (str == getSysDate()) {
return true;
}
else {
return false;
}
}
//8.判斷是否大于當(dāng)前時間
function checkAfterDate(str) {
str = convDate(str, "/");
if (str.length == 6) {
str += "01";
}
if (str <= getSysDate()) {
return false;
}
return true;
}
//比較兩個時間大小
function compareDate(fromDate, toDate) {
if (checkDate(fromDate) != true) {
return false;
}
if (checkDate(toDate) != true) {
return false;
}
fromDate = convDate(fromDate, "/");
toDate = convDate(toDate, "/");
if ( (fromDate.length != 8) || !checkNumber(fromDate) ||
(toDate.length != 8) || !checkNumber(toDate)) {
return false;
}
if (fromDate <= toDate) {
return true;
}
else {
return false;
}
}
/****************************************五、表單值的格式化操作*************************************************/
//1.上傳文件時取得表單的上傳路徑中的文件名
function getFileName(fullpath) {
var platform = navigator.platform;
var fileseperator = (platform.indexOf("Win") == -1) ? "/" : "\\";
var idx = fullpath.lastIndexOf(fileseperator);
if (idx == -1) {
return fullpath;
}
else if (idx >= fullpath.length - 1) {
return "";
}
else {
return fullpath.substring(idx + 1);
}
}
//2.去掉FORM中所有TEXT和TEXTAREA表單的值兩邊的空格
function trimItems(oFrm) {
var i = 0;
var type = "";
for (i = 0; i < oFrm.elements.length; i++) {
type = oFrm.elements[i].type;
if ( (type == "text") || (type == "textarea")) {
oFrm.elements[i].value = trim(oFrm.elements[i].value);
}
}
}
/****************************************六、提交前的表單值檢查*************************************************/
//1.在刪除操作時檢查是否選擇復(fù)選框
function isSelected() {
for (var i = 0; i < document.all.length; i++) {
if (document.all[i].tagName.toUpperCase() == "INPUT") {
var tmp = document.all[i].type.toUpperCase();
var name = document.all[i].name;
if ( (tmp == "CHECKBOX") && (document.all[i].checked == true) &&
(name == "selection" || name == "selected")) {
return true;
}
}
}
return false;
}
//2.檢查表單的值是否為空,是否符合最大最小長度限制
var MSG_CHECK_SUCCESS = "Check Success";
function checkItem(sCheck, nMinLen, nMaxLen, chkFlg) {
var strLen = 0;
if ( (sCheck == null) || (sCheck == "")) {
if ( ( (chkFlg & 0X80) == 0X80) || ( (chkFlg & 0X00) == 0X00)) {
return "是必須輸入的項(xiàng)目";
}
else {
return MSG_CHECK_SUCCESS;
}
}
if ( (nMinLen > 0) || (nMaxLen > 0)) {
strLen = getLength(sCheck);
if (nMinLen > 0) {
if (nMinLen == nMaxLen) {
if (strLen != nMinLen) {
if ( (chkFlg & 0x08) == 0x08) {
return "的長度必須" + nMinLen + "字節(jié)";
}
else {
return "的長度必須" + nMinLen + "字節(jié)";
}
}
}
else if (strLen < nMinLen) {
if ( (chkFlg & 0x08) == 0x08) {
return "不是數(shù)字";
}
else {
return "過于短小,最小長度為" + nMinLen + "字節(jié)";
}
}
}
if (nMaxLen > 0) {
if (strLen > nMaxLen) {
return "超過了最大長度" + nMaxLen + "字節(jié)";
}
}
}
if ( (chkFlg & 0x10) == 0x10) {
if (!checkASCII(sCheck)) {
return "不正確";
}
}
if ( (chkFlg & 0x08) == 0x08) {
if (!checkNumber(sCheck)) {
return "是數(shù)字項(xiàng)目";
}
}
if ( (chkFlg & 0x04) == 0x04) {
if (!checkDate(sCheck)) {
return "是日期項(xiàng)目";
}
}
if ( (chkFlg & 0x02) == 0x02) {
if (!checkPhone(sCheck)) {
return "不正確";
}
}
if ( (chkFlg & 0x01) == 0x01) {
if (!checkEmail(sCheck)) {
return "不正確";
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -