// +++++++++++++++++++++++++++++++++++++++++++++++ // ++++++++++++++++++ Date ++++++++++++++++++++++++ // +++++++++++++++++++++++++++++++++++++++++++++++ /*validate date format on onblur event*/ function date_onkeydown(item, e){ if (!e) var e = window.event; if (window.event) code = e.keyCode; else if (e.which) code = e.which; if(code == 8) { return true; } else if (((code < 58 && code > 47) || (code < 106 && code > 95)) && (item.value.length == 2 || item.value.length ==5)){ item.value = item.value +"/"; } } function date_onblur(item, hidden_message) { if (isValidDateDDMMYYYY(item.value)) { window.status = ""; var str = new String(item.value); var strDisplayDate = ""; var current_date = new Date(); var str2 = new String(current_date.getFullYear()); if (str.length == 8) { if (str.indexOf('/', 0) >= 0) { var dateSep = /(\/)/; var datePart = str.split(dateSep); strDisplayDate = datePart[0] + '/' + datePart[1] + '/' + str2.substring(0, 2).concat(datePart[2]); } else { strDisplayDate = str.substring(0, 2) + '/' + str.substring(2, 4) + '/' + str.substring(4); } item.value = strDisplayDate; } if (str.length == 6) { strDisplayDate = str.substring(0, 2) + '/' + str.substring(2, 4) + '/' + str2.substring(0, 2).concat(str.substring(4, 6)); item.value = strDisplayDate; } return true; } else { if (item.value != "" && !hidden_message) { alert(label_javascript_event_date); item.value = ''; } //item.value = ""; return false; } } /*validate date format on mouse out event*/ function date_onmouseout(item) { if (isValidDateDDMMYYYY(item.value)) { window.status = ""; var str = new String(item.value); var strDisplayDate = ""; var current_date = new Date(); var str2 = new String(current_date.getFullYear()); if (str.length == 8) { if (str.indexOf('/', 0) >= 0) { var dateSep = /(\/)/; var datePart = str.split(dateSep); strDisplayDate = datePart[0] + '/' + datePart[1] + '/' + str2.substring(0, 2).concat(datePart[2]); } else { strDisplayDate = str.substring(0, 2) + '/' + str.substring(2, 4) + '/' + str.substring(4, 8); } item.value = strDisplayDate; } if (str.length == 6) { strDisplayDate = str.substring(0, 2) + '/' + str.substring(2, 4) + '/' + str2.substring(0, 2).concat(str.substring(4, 6)); item.value = strDisplayDate; } return true; } else { if (item.value != "") { alert(label_javascript_event_date); item.value = ''; } // item.value = ""; return false; } } /*validate date format on key press event*/ function date_onkeypress(item, e) { var date_Pattern = /[0-9\/]/i; var code; if (!e) var e = window.event; if (window.event) code = e.keyCode; else if (e.which) code = e.which; if(code == 13){ if (date_onblur(item, 1)){ enterToSubmit(e); }else{ nextElement(item, e); } }else{ var character = String.fromCharCode(code); if (keypress_pattern(date_Pattern, character, e)) { keypress_return(true, e); } else { keypress_return(false, e); } } } /*validate date format on key up event*/ function date_onkeyup(item, e) { var date_Pattern = /[0-9\/]/i; if (date_Pattern.test(item.value)) { window.status = ""; keypress_return(true, e); } else { if (item.value != "") { alert(label_javascript_event_date); item.value = ''; } //item.value = ""; keypress_return(false, e); } } /*validate date format ,corrected format is [DD/MM/YYYY , DD/MM/YY, DDMMYYYY, DDMMYY]*/ function isValidDateDDMMYYYY(strDate) { var date_Pattern_Leap = /^(((((([0-2][1-9])|([1-3][0-1]))\/(([0][1,3,5,7,8])|([1][0,2])))|((([0-2][1-9])|([1-3][0]))\/(([0][4,6,9])|([1][1])))|((([0-2][1-9])|([1,2][0]))\/(([0][2]))))\/(([1-9][0-9][0-9][0-9])|(([0-9][1-9])|([1-9][0]))))|((((([0-2][1-9])|([1-3][0-1]))(([0][1,3,5,7,8])|([1][0,2])))|((([0-2][1-9])|([1-3][0]))(([0][4,6,9])|([1][1])))|((([0-2][1-9])|([1,2][0]))(([0][2]))))(([1-9][0-9][0-9][0-9])|(([0-0][1-9])|([1-9][0])))))$/i; var date_Pattern_nonLeap = /^((((((([0-2][1-9])|([1-3][0-1]))\/(([0][1,3,5,7,8])|([1][0,2])))|((([0-2][1-9])|([1-3][0]))\/(([0][4,6,9])|([1][1])))|(((([0-1][1-9])|([2][0-8]))|([1,2][0]))\/(([0][2]))))\/(([1-9][0-9][0-9][0-9])|(([0-9][1-9])|([1-9][0])))))|((((([0-2][1-9])|([1-3][0-1]))(([0][1,3,5,7,8])|([1][0,2])))|((([0-2][1-9])|([1-3][0]))(([0][4,6,9])|([1][1])))|(((([0-1][1-9])|([2][1-8]))|([1,2][0]))(([0][2]))))(([1-9][0-9][0-9][0-9])|(([0-9][1-9])|([1-9][0])))))$/i; var date_Pattern = date_Pattern_nonLeap; var str = new String(strDate); var current_date = new Date(); var str2 = new String(current_date.getFullYear()); var strYear = ''; var datePart; if (str.length == 8) { var dateSep = /(\/)/; if (str.indexOf('/', 0) >= 0) { datePart = str.split(dateSep); strYear = str2.substring(0, 2).concat(datePart[2]); } else { strYear = str.substring(4, 8); } } else if (str.length == 6) { strYear = str2.substring(0, 2).concat(str.substring(4, 6)); } else if (str.length == 10) { var dateSep = /(\/)/; datepart = str.split('/'); strYear = datepart[2]; } else { return false; } if (eval(strYear % 4) == 0) { date_Pattern = date_Pattern_Leap; } else { date_Pattern = date_Pattern_nonLeap; } if (date_Pattern.test(strDate)) { return true; } else { return false; } } // +++++++++++++++++++++++++++++++++++++++++++++++ // ++++++++++++++++++ Number ++++++++++++++++++++++++ // +++++++++++++++++++++++++++++++++++++++++++++++ function number_onmouseout(item) { var numberOnly_Pattern = /^([0-9]*)$/i; if (numberOnly_Pattern.test(item.value)) { window.status = ""; return true; } else { if (item.value != "") { alert(label_javascript_event_number); item.value = ''; } //item.value = ""; return false; } } function number_onblur(item, hidden_message) { var numberOnly_Pattern = /^([0-9]*)$/i; if (numberOnly_Pattern.test(item.value)) { window.status = ""; return true; } else { if (item.value != "" && !hidden_message) { alert(label_javascript_event_number); item.value = ''; } //item.value = ""; return false; } } function number_onkeyup(item) { return true; } function number_onkeypress(item, e) { var allow_key_Pattern = /[0-9]/i; var code; if (!e) var e = window.event; if (window.event) code = e.keyCode; else if (e.which) code = e.which; var character = String.fromCharCode(code); if(code == 13){ if (number_onblur(item, 1)){ enterToSubmit(e); }else{ nextElement(item, e); } }else{ if (keypress_pattern(allow_key_Pattern, character, e)) { keypress_return(true, e); } else { keypress_return(false, e); } } } /******************************************************************/ /************** handle textarea input **************************/ /******************************************************************/ function textarea_onkeypress(item, e, maxlength) { var str = item.value if (str.length > maxlength) { keypress_return(false, e); } else { keypress_return(true, e); } } function textarea_onmouseout(item, maxlength) { var str = item.value if (str.length > maxlength) { var sData = str.substr(0, maxlength); item.value = sData; alert(label_javascript_event_textarea1+" " + maxlength +" "+label_javascript_event_textarea2); item.value = item.value.substr(0, maxlength); } return true; } function textarea_onkeyup(item, maxlength) { var str = item.value if (str.length > maxlength) { var sData = str.substr(0, maxlength); item.value = sData; alert(label_javascript_event_textarea1+" " + maxlength +" "+label_javascript_event_textarea2); item.value = item.value.substr(0, maxlength); } return true; } function textarea_onblur(item, maxlength) { var str = item.value if (str.length > maxlength) { var sData = str.substr(0, maxlength); item.value = sData; alert(label_javascript_event_textarea1+" " + maxlength +" "+label_javascript_event_textarea2); item.value = item.value.substr(0, maxlength); } return true; } /******************************************************************/ /************** Email **************************/ /******************************************************************/ function email_onkeyup() { return true; } function email_onkeypress() { return true; } function email_onblur(item) { if (isEmail(item.value)) { window.status = ""; return true; } else { if (item.value != "") { alert(label_javascript_event_email); item.value = ''; } //item.value = ""; return false; } } function email_onmouseout(item) { if (isEmail(item.value)) { window.status = ""; return true; } else { if (item.value != "") { alert(label_javascript_event_email); item.value = ''; } // item.value = ""; return false; } } function citizanId_onblur(item) { var numberOnly_Pattern = /^([0-9]*)$/i; if (item.value != "") { if (isCitizanId(item.value)) { window.status = ""; return true; } else { alert("กรุณากรอกรหัสบัตรประชาชนให้ถูกต้อง"); item.value = ''; //item.value = ""; return false; } } } function realNumberUnGrouping(str) { //var str = obj.value; var str2 = ''; for (i=0;i 0) { for (i=0;i