You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
207 lines
5.5 KiB
207 lines
5.5 KiB
|
|
|
|
//----------- [輸入控制,僅限輸入 0~9 十個字元]-----------
|
|
//eg:onkeypress="return inputNubmerFloat()"
|
|
function inputNubmerFloat() {
|
|
var key = window.event.keyCode;
|
|
if ((key >= 48 && key <= 57)) {
|
|
return true;
|
|
}
|
|
else {
|
|
window.event.keyCode = 0;
|
|
return true;
|
|
}
|
|
}
|
|
|
|
|
|
//----------- [輸入控制,僅限輸入 0~9 十個字元和一個小數點]-----------
|
|
//eg:onkeypress="return inputNubmerFloat()"
|
|
function KeyPress(objTR) {
|
|
var txtval = objTR.value;
|
|
|
|
var key = event.keyCode;
|
|
if ((key < 48 || key > 57) && key != 46) {
|
|
event.keyCode = 0;
|
|
}
|
|
else {
|
|
if (key == 46) {
|
|
if (txtval.indexOf(".") != -1 || txtval.length == 0)
|
|
event.keyCode = 0;
|
|
}
|
|
}
|
|
}
|
|
|
|
//----------- [輸入控制,僅限輸入字母] -----------------
|
|
//eg:onkeypress="return inputLetter()"
|
|
function inputLetter() {
|
|
var key = window.event.keyCode;
|
|
if ((key >= 65 && key <= 90) || (key >= 97 && key <= 122)) {
|
|
return true;
|
|
}
|
|
else {
|
|
window.event.keyCode = 0;
|
|
return true;
|
|
}
|
|
}
|
|
|
|
//--------- [移除非數字內容] -----------
|
|
//eg:onblur="isMubmer(id)";
|
|
function isMubmer(id) {
|
|
var textbox = document.getElementById(id);
|
|
var textvalue = textbox.value;
|
|
if (textvalue != "") {
|
|
textbox.value = textvalue.replace(/[^0-9 .]/g, '');
|
|
SetHidStats(id, (textbox.value.length == textvalue.length));
|
|
textvalue = trim(textbox.value, ","); //先去千分位
|
|
textvalue = textvalue * 1;
|
|
textbox.value = addComma(textvalue.toString()); //再加千分位
|
|
}
|
|
else {
|
|
textbox.value = "0";
|
|
}
|
|
}
|
|
|
|
//--------- [移除非字母內容] -----------
|
|
//eg:onblur="isLetter(id)";
|
|
function isLetter(id) {
|
|
var textbox = document.getElementById(id);
|
|
var textvalue = textbox.value;
|
|
textbox.value = textbox.value.replace(/[^a-z A-Z]/g, '')
|
|
SetHidStats(id, (textbox.value.length == textvalue.length));
|
|
}
|
|
|
|
//--------- [判斷EMail格式(驗證控件)]---------
|
|
//ge:onblur="return checkEmail(id)";
|
|
function checkEmail(id) {
|
|
var textbox = document.getElementById(id);
|
|
var strText = trimSpace(textbox.value);
|
|
var objRe = /^[\w]+@([\w]+\.)+[\w]{2,3}$/;
|
|
if (strText == "") return true;
|
|
SetHidStats(id, objRe.test(strText));
|
|
if (objRe.test(strText)) {
|
|
return true;
|
|
}
|
|
else {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
//---------------- [自定義方法] ----------------------------
|
|
//去頭尾空格
|
|
function trimSpace(str) {
|
|
var instring = str.toString();
|
|
var value = new String();
|
|
//去頭
|
|
for (var i = 0; i < instring.length; i++) {
|
|
if (instring.charAt(i) != " ") {
|
|
value = instring.substring(i);
|
|
break;
|
|
}
|
|
}
|
|
//去尾
|
|
while (value.charAt(value.length - 1) == " ") {
|
|
value = value.substring(0, value.length - 1);
|
|
}
|
|
return value;
|
|
}
|
|
//記錄檢測狀態
|
|
function SetHidStats(id, bool) {
|
|
var Stats = document.getElementById(id.replace(/AmtTextBox/g, "AmtHidStats"));
|
|
if (id.replace(/AmtTextBox/g, "AmtHidStats").indexOf("_AmtHidStats") == -1) {
|
|
Stats = document.getElementById(id.replace(/AmtTextBox/g, "AmtHidStats") + "_AmtHidStats");
|
|
}
|
|
if (bool) {
|
|
Stats.value = "Y";
|
|
}
|
|
else {
|
|
Stats.value = "N";
|
|
}
|
|
}
|
|
|
|
function addComma(objvalue) {
|
|
|
|
var frontStr = "";
|
|
var backStr = "";
|
|
var sect = ""
|
|
|
|
if (objvalue.indexOf(".") != -1) {
|
|
frontStr = objvalue.substring(0, objvalue.indexOf("."));
|
|
backStr = objvalue.substring(objvalue.indexOf(".") + 1);
|
|
}
|
|
else { //ming941214負數的處理
|
|
if (objvalue.indexOf("-") != -1) {
|
|
sect = "-";
|
|
frontStr = objvalue.substr(1)
|
|
} else {
|
|
frontStr = objvalue;
|
|
}
|
|
//frontStr=objvalue;
|
|
backStr = "";
|
|
}
|
|
|
|
var leftCharsCount = frontStr.length % 3;
|
|
//共被","分成幾段
|
|
var totalFieldsCount = (frontStr.length - leftCharsCount) / 3;
|
|
|
|
var i = 0;
|
|
var newFrontStr = "";
|
|
|
|
newFrontStr += frontStr.substr(0, leftCharsCount);
|
|
if (newFrontStr.length != 0) {
|
|
newFrontStr += ",";
|
|
}
|
|
|
|
for (i = 0; i < totalFieldsCount; i++) {
|
|
newFrontStr += frontStr.substr(i * 3 + leftCharsCount, 3) + ",";
|
|
}
|
|
|
|
newFrontStr = newFrontStr.substr(0, newFrontStr.length - 1);
|
|
|
|
if (objvalue.indexOf(".") >= 0) {
|
|
objvalue = newFrontStr + "." + backStr
|
|
}
|
|
else {
|
|
objvalue = newFrontStr
|
|
}
|
|
objvalue = sect + objvalue;
|
|
return objvalue;
|
|
}
|
|
function trim(str, Char) {
|
|
if (Char == null) {
|
|
Char = " ";
|
|
}
|
|
var resultStr = str;
|
|
while (resultStr.indexOf(Char) >= 0) {
|
|
resultStr = resultStr.replace(Char, '');
|
|
|
|
}
|
|
return resultStr;
|
|
}
|
|
|
|
function clearComma(id) {
|
|
var textbox = document.getElementById(id);
|
|
if (textbox.value.indexOf(",") != -1) {
|
|
textbox.value = trim(textbox.value, ",");
|
|
}
|
|
if (textbox.value == "0") {
|
|
textbox.value = "";
|
|
}
|
|
// moveEnd(textbox);
|
|
// var txt = textbox.createTextRange();
|
|
// txt.moveStart('character', textbox.value.length);
|
|
// txt.collapse(true);
|
|
// txt.select();
|
|
}
|
|
|
|
function moveEnd(obj) {
|
|
//obj.focus();
|
|
var len = obj.value.length;
|
|
if (document.selection) {
|
|
var sel = obj.createTextRange();
|
|
sel.moveStart('character', len);
|
|
sel.collapse();
|
|
sel.select();
|
|
} else if (typeof obj.selectionStart == 'number' && typeof obj.selectionEnd == 'number') {
|
|
obj.selectionStart = obj.selectionEnd = len;
|
|
}
|
|
}
|