1// KeybordTrap 2var chk=0; 3var fnKeyName= new Array("F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","Esc"); 4var fnKeyCode= new Array(113,114,115,116,117,118,119,120,121,122,123,27); 5var lastKeyCode = 0; 6 7var KEY_NONE = 0; // Keyã¤ãã³ãã®åãæ¶ã 8var KEY_BS = 8; // BackSpace 9var KEY_TAB = 9; // TAB 10var KEY_ENTER = 13; // Enter 11 12var isInitFocus = true; 13 14/** 15 * DOMããã¼ããããæç¹ã§å¼ã°ããåæåå¦çã§ãã 16 */ 17function initDomReady() { 18 initializeScreenStatus(); 19 20 // ã¤ãã³ããã³ãã©ã®è¨å® 21 initEvent(); 22} 23 24function unloadPage() { 25 // ã¤ãã³ããã³ãã©ã®åé¤ 26 removeEvent(); 27} 28 29/** 30 * bodyã®onloadããå¼ã°ããå¦çã§ãã 31 */ 32function initBody(){ 33 //ã«ã¼ãæ°éãªãã¼ã 34 cartNumReload(); 35} 36 37function initializeScreenStatus() { 38 var obj; 39 40 // ãã¼ãæ¼ãããæ 41 document.onkeydown = eventKeyDown; 42 43 var objForm = document.forms; 44 var isFocused = false; 45 var isExistErrorMessage = Validator.isExistErrorMessage(); 46 for (var i = 0 ; i < objForm.length ; i++) { 47 if (!isExistErrorMessage) { 48 // ã¨ã©ã¼ã¡ãã»ã¼ã¸ã®å é ã«å¾ç¨(ã¿ãã®åæåãªã©ãå®äºããæ®µéã§)ãã©ã¼ã«ã¹ãããã®ã§ãå é ãã©ã¼ã«ã¹ã¯ããªã 49 if (!isFocused) { 50 isFocused = focusEnabledFirst(objForm[i].elements); 51 } 52 } 53 54 for (var n = 0 ; n < objForm[i].elements.length; n++) { 55 obj = objForm[i].elements[n]; 56 if (isObjectInputType(obj) || isObjectButtonType(obj)) { 57 obj.onkeydown = eventEntry; 58 obj.initValue = obj.value; 59 } 60 } 61 } 62 63 // validatorã®ãã±ã¼ã«è¨å® 64 var localeLangage = getValue("pageLocaleLangage"); 65 if (!isNullorUndefinedorEmpty(localeLangage)) { 66 var ruleMessageObject = Validator.lang[localeLangage]; 67 if (!isNullorUndefined(ruleMessageObject)) { 68 Validator.rule.msg = ruleMessageObject; 69 } 70 } 71} 72 73function focusEnabledFirst(elements) { 74 if (!isInitFocus) { 75 return false; 76 } 77 78 if (isNullorUndefined(elements)) { 79 return false; 80 } 81 82 for (var n = 0 ; n < elements.length; n++) { 83 obj = elements[n]; 84 if (isNullorUndefined(obj)) { 85 continue; 86 } 87 88 if (obj.tabIndex != -1 && !obj.disabled){ 89 if (isObjectInputType(obj)) { 90 obj.focus(); 91 saveFocusValue(obj) 92 return true; 93 } 94 } 95 } 96 97 return false; 98} 99 100function isObjectInputType(obj) { 101 if (isNullorUndefined(obj)) { 102 return false; 103 } 104 if (isObjectTextInputType(obj) || isObjectRadioType(obj) || obj.type == 'checkbox' || isObjectSelectInputType(obj)) { 105 return true; 106 } else { 107 return false; 108 } 109} 110 111function isObjectRadioType(obj) { 112 if (isNullorUndefined(obj)) { 113 return false; 114 } 115 116 if (obj.type == 'radio') { 117 return true; 118 } else { 119 return false; 120 } 121} 122 123function isObjectTextInputType(obj) { 124 if (isNullorUndefined(obj)) { 125 return false; 126 } 127 if (obj.type == 'text' || obj.type == 'textarea' || obj.type == 'password' || obj.type == 'tel' || obj.type == 'email' || obj.type == 'number') { 128 return true; 129 } else { 130 return false; 131 } 132} 133 134function isObjectSelectInputType(obj) { 135 if (isNullorUndefined(obj)) { 136 return false; 137 } 138 if (obj.type == 'select-one' || obj.type == 'select-multiple') { 139 return true; 140 } else { 141 return false; 142 } 143} 144 145function isObjectButtonType(obj) { 146 if (isNullorUndefined(obj)) { 147 return false; 148 } 149 if (obj.type == 'button' || obj.type == 'submit' || obj.type == 'reset') { 150 return true; 151 } else { 152 return false; 153 } 154} 155 156function isObjectLinkType(obj) { 157 if (isNullorUndefined(obj)) { 158 return false; 159 } 160 if (!isNullorUndefined(obj.href)) { 161 return true; 162 } else { 163 return false;
164 } 165} 166 167// ã¤ãã³ããã³ãã©ã®è¨å® 168function initEvent() { 169 initOrRemoveEvent(initEventObject); 170 var divs = document.getElementsByTagName("DIV"); 171 for(var i = 0; i < divs.length; i++) { 172 if (divs[i].className.indexOf("SCROLL_TABLE") >= 0) { 173 makeFixHeader(divs[i]); 174 } 175 } 176} 177 178function removeEvent() { 179 initOrRemoveEvent(removeEventObject); 180} 181 182// å ¨ã¦ã®ãªãã¸ã§ã¯ãã«å¯¾ããã¤ãã³ããã³ãã©ã®è¨å®ãåé¤ 183function initOrRemoveEvent(initOrRemoveFunction) { 184 // Formãªãã¸ã§ã¯ãåä½ã®ãã©ã¼ã«ã¹ãã³ãã©åé¤ 185 var objForms = document.forms; 186 for(var i = 0; i < objForms.length; i++) { 187 for(var j = 0; j < objForms[i].elements.length; j++) { 188 var obj = objForms[i].elements[j]; 189 190 // disabledãreadonlyã®å ´åã¯å¯¾è±¡å¤ 191 if (isObjectReadOnly(obj)) { 192 continue; 193 } 194 195 // èªååãè¾¼ã¿ãè¡ããªããªãã¸ã§ã¯ãã¯å¯¾è±¡å¤ 196 if (obj.className.indexOf("NON_AUTO") >= 0) { 197 continue; 198 } 199 200 // ã¤ãã³ãè¨å® or åé¤ 201 initOrRemoveFunction(obj); 202 } 203 } 204} 205 206 207function initEventObject(obj) { 208 setOrRemoveEventListener(obj, setEventFunction); 209 initEventObjectAdd(obj); 210} 211 212function initEventObjectAdd(obj) { 213 // ãªãã¸ã§ã¯ãã«è¿½å ã®ã¤ãã³ãå¦çãããã°ã追å 214} 215 216function removeEventObject(obj) { 217 setOrRemoveEventListener(obj, removeEventFunction); 218 removeEventObjectAdd(obj); 219} 220 221function removeEventObjectAdd(obj) { 222 // ãªãã¸ã§ã¯ãã«è¿½å ã®ã¤ãã³ãå¦çãããã°ã追å 223} 224 225 226function isObjectReadOnly(obj) { 227 if (isNullorUndefined(obj)) { 228 return true; 229 } 230 if (obj.disabled || obj.readOnly) { 231 return true; 232 } else { 233 return false; 234 } 235} 236 237function setEventListener(obj) { 238 setOrRemoveEventListener(obj, setEventFunction); 239} 240 241function deleteEventListener(obj) { 242 setOrRemoveEventListener(obj, removeEventFunction); 243} 244 245function setOrRemoveEventListener(obj, setOrRemoveEventFunction) { 246 if (!isObjectInputType(obj)) { 247 return; 248 } 249 // ãã©ã¼ã«ã¹ãåãåã£ãæï¼é¢æ°ã追å ï¼ 250 setOrRemoveEventFunction(obj, "onfocus", eventFocus); 251 var className = obj.className; 252 253 if (className != "") { 254 if (className.indexOf("MAIL_ADDRESS") >= 0 || 255 className.indexOf("HALF_ENGLISH_NUMBER") >= 0 || 256 className.indexOf("PASSWORD") >= 0 || 257 className.indexOf("HALF_ENGLISH") >= 0 || 258 className.indexOf("HIRAGANA_CHAR") >= 0) { 259 // ä½ãããªã 260 } else if (className.indexOf("NUMBER") >= 0) { 261 setOrRemoveEventFunction(obj, "onfocus", eventForcusNumber); 262 } 263 } 264 265 // ãã©ã¼ã«ã¹ã失ã£ãæ 266 setOrRemoveEventFunction(obj, "onblur", eventBlur); 267 var eventName = "onblur"; 268 if(obj.type == 'radio' || obj.type == 'checkbox') { 269 //radio checkboxã¯changeã¿ã¤ãã³ã°ã§ãã§ã㯠270 eventName = 'onchange'; 271 } 272 //åæå 273 setOrRemoveEventFunction(obj, eventName, eventClearError); 274 //å夿 275 eventFormat(obj, eventName, setOrRemoveEventFunction); 276 //å¿ é ã»å½¢å¼ãã§ã㯠277 setOrRemoveEventFunction(obj, eventName, eventCheck); 278} 279 280function setEventFunction(obj, e, func) { 281 if (obj.attachEvent != undefined) { 282 obj.attachEvent(e, func); 283 } else if (obj.addEventListener != undefined) { 284 var ev = e.replace(/^on/, ""); 285 obj.addEventListener(ev, func, false); 286 } 287} 288 289function removeEventFunction(obj, e, func) { 290 if (obj.detachEvent != undefined) { 291 obj.detachEvent(e, func); 292 } 293 else if (obj.removeEventListener != undefined) { 294 var ev = e.replace(/^on/, ""); 295 obj.removeEventListener(ev, func, false); 296 } 297} 298 299function getEventObject(event) { 300 return window.event?window.event.srcElement:event.target; 301} 302 303function eventFocus(e) { 304 var obj = getEventObject(e); 305 inCursor(obj); 306 307 // ãã©ã¼ã«ã¹ãå ¥ã£ãã¨ãã®å¤ãè¨æ¶ããã¦ã¼ã¶ã¼å ¥åããããå¤å®å¯è½ã«ãã 308 saveFocusValue(obj); 309} 310 311function saveFocusValue(obj) { 312 obj.inFocusValue = obj.value; 313} 314 315function eventBlur(e) { 316 var ret =eventBlurBefore(e); 317 if(ret !== undefined && !ret) { 318 return; 319 } 320 var obj = getEventObject(e);
321 outCursor(obj); 322 if (isNullorUndefined(obj)) { 323 return; 324 } 325 326 var className = obj.className; 327 if (className.indexOf("TEL_1") >= 0 || className.indexOf("TEL_2") >= 0 || className.indexOf("ZIP_1") >= 0) { 328 if (obj.value != obj.inFocusValue) { 329 // è¤æ°é åã1ã¤ã®å¤ã¨ãã¦æ±ãé»è©±çªå·(3ã«ã©ã )ãéµä¾¿çªå·(2ã«ã©ã )ã®ãããªé åã®å ´åãåã®é åã®å¤æ´æç¡ãè¨æ¶ 330 // æå¾ã®ã¨ãªã¢å ¥åæã®Ajaxãªã©å®è¡å¤å®ã§å©ç¨ãã 331 obj.isMultiPreAreaChangeFocusOutValue = true; 332 } 333 } 334 335 obj.inFocusValue = null; 336 eventBlurAfter(e); 337} 338function eventBlurBefore(e) {} 339function eventBlurAfter(e) {} 340 341/** 342 * åé åãã©ã¼ã«ã¹ã¢ã¦ãæã«å¤ã®å¤æ´ããããããè¿å´ãã¾ãã 343 * 344 * @param obj 対象ã¨ã¬ã¡ã³ã 345 * @returns (åé åãã©ã¼ã«ã¹ã¢ã¦ãæã®)対象ã¨ã¬ã¡ã³ãã¨ãã¦ã®å¤æ´ããã£ãå ´åã¯ãtrue 346 */ 347function isChangeMultiPreAreaChangeFocusOutValue(obj) { 348 if (isNullorUndefined(obj)) { 349 return false; 350 } 351 if (isNullorUndefined(obj.isMultiPreAreaChangeFocusOutValue)) { 352 return false; 353 } 354 355 if (obj.isMultiPreAreaChangeFocusOutValue) { 356 return true; 357 } 358 return false; 359} 360 361/** 362 * åé åãã©ã¼ã«ã¹ã¢ã¦ãæã«å¤ã®å¤æ´ãããããã®è¨æ¶ãã¯ãªã¢ãã¾ãã 363 * 364 * @param obj 対象ã¨ã¬ã¡ã³ã 365 */ 366function clearMultiAreaChangeFocusOutValue(obj) { 367 if (!isNullorUndefined(obj)) { 368 obj.isMultiPreAreaChangeFocusOutValue = null; 369 } 370} 371 372/** 373 * 対象ã®ã¨ã¬ã¡ã³ãã®å¤ã«ã¦ã¼ã¶ã¼å ¥åããã£ããå¤å®ãã¾ãã 374 * @param obj 対象ã¨ã¬ã¡ã³ã 375 * @returns ã¦ã¼ã¶ã¼å ¥åããã£ãå ´åtrue 376 */ 377function isChangeObject(obj) { 378 // objã«å ¥åããªããã°æ»ã 379 if(obj === null){ return; } 380 381 if (obj.isChangeScriptLock) { 382 return false; 383 } 384 385 if (!isNullorUndefined(obj.isChangeByScript) && obj.isChangeByScript) { 386 obj.isChangeByScript = false; 387 return true; 388 } 389 if (obj.inFocusValue != obj.value) { 390 return true; 391 } else { 392 return false; 393 } 394} 395 396/** 397 * ç»é¢ã«ã¦ã¼ã¶ã¼å ¥åããã£ãããå¤å®ãã 398 * @return ã¦ã¼ã¶ã¼å ¥åããã£ãå ´åtrue 399 */ 400function isInputScreenValue() { 401 var objForms = document.forms; 402 for(var i = 0; i < objForms.length; i++) { 403 for(var j = 0; j < objForms[i].elements.length; j++) { 404 var obj = objForms[i].elements[j]; 405 if (isObjectInputType(obj)) { 406 var initValue = obj.initValue; 407 var nowValue = obj.value; 408 if (initValue != nowValue) { 409 return true; 410 } 411 } 412 } 413 } 414 return false; 415} 416 417function eventForcusNumber(e) { 418 var obj = getEventObject(e); 419 var number = obj.value; 420 if(number == null || number == "") { 421 return; 422 } else { 423 // ã«ã³ããå¤ã 424 obj.value = removeCanma(number); 425 return; 426 } 427} 428 429function removeCanma(number) { 430 if (number == null || number == undefined) { 431 return ""; 432 } else { 433 return number.replace(/,/g, ""); 434 } 435} 436 437function eventTohalf(e) { 438 var obj = getEventObject(e); 439// Validator.init(obj); 440 if(obj.value == null || obj.value == "") { 441 return; 442 } 443 444 var half = Validator.tohalf(obj.value); 445 obj.value = half; 446} 447 448function eventFormatNumber(e) { 449 var obj = getEventObject(e); 450// Validator.init(obj); 451 if(obj.value == null || obj.value == "") { 452 return; 453 } 454 455 var className = obj.className; 456 var isSeparate = true; 457 if (className.indexOf("NOT_SEPARATED") >= 0) { 458 isSeparate = false; 459 } else { 460 isSeparate = true; 461 } 462 463 var periodNumber = 0; 464 if (className.indexOf("PERIOD_") >= 0) { 465 var ns = className.split("PERIOD_"); 466 if (ns.length > 1) { 467 periodNumber = Number(ns[1].split(" ")[0]); 468 } 469 } else { 470 periodNumber = 0; 471 } 472 473 try {
474 var half = Validator.tohalf(obj.value); 475 obj.value = half; 476 if (className.indexOf("NUMBER_STRING") >= 0) { 477 // ãã¼ã¿åãæååã®æ°å¤ã¯ããã¤ãã³ã¨ã«ã³ãã®ã¿åé¤ãã 478 var targets = ["-", ","]; 479 obj.value = removeCharacters(obj.value, targets); 480 } else { 481 var formatNumber = getFormatedNumberString(obj.value, periodNumber, isSeparate, true); 482 obj.value = formatNumber; 483 } 484 } catch(e) { 485 if(e instanceof ExNumberException) { 486 Validator.output(obj, e.message); 487 } else { 488 throw e; 489 } 490 } 491} 492 493function eventFormatDate(e) { 494 var obj = getEventObject(e); 495 setFormatDate(obj); 496} 497 498function eventFormatDateYYMM(e) { 499 var obj = getEventObject(e); 500 setFormatDateYYMM(obj); 501} 502 503function eventFormatDateTime(e) { 504 var obj = getEventObject(e); 505 setFormatDateTime(obj); 506} 507 508function eventFormatDateHourMinutes(e) { 509 var obj = getEventObject(e); 510 setFormatDateHourMinutes(obj); 511} 512 513function eventFormatTimestamp(e) { 514 var obj = getEventObject(e); 515 setFormatTimestamp(obj); 516} 517 518function eventFormatTime(e) { 519 var obj = getEventObject(e); 520 setFormatTime(obj); 521} 522 523function eventClearError(e) { 524 var obj = getEventObject(e); 525 if(obj.type == 'radio' || obj.type == 'checkbox') { 526 obj = getFirstElement(obj.name); 527 } 528 Validator.init(obj); 529} 530 531function eventCheckFormat(e) { 532 var obj = getEventObject(e); 533 var className = obj.className; 534 if (className.indexOf("MAIL_ADDRESS") >= 0) { 535 return !Validator.check(obj, "mail", null, false); 536 } else if (className.indexOf("HALF_ENGLISH_NUMBER") >= 0) { 537 return !Validator.check(obj, "alphabetNumber", null, false); 538 } else if (className.indexOf("PASSWORD") >= 0) { 539 return !Validator.check(obj, "password", null, false); 540 } else if (className.indexOf("HALF_ENGLISH") >= 0) { 541 return !Validator.check(obj, "alphabet", null, false); 542 } else if (className.indexOf("HIRAGANA_CHAR") >= 0) { 543 return !Validator.check(obj, "hiragana", null, false); 544 } else if (className.indexOf("FULL_PITCH_CHAR_KANA") >= 0) { 545 return !Validator.check(obj, "kana", null, false); 546 } 547 return false; 548} 549 550function eventCheckRangeAndCount(e) { 551 var obj = getEventObject(e); 552 var className = obj.className; 553 var isExistError = false; 554 if (className.indexOf("NUMBER") >= 0 && className.indexOf("HALF_ENGLISH_NUMBER") < 0) { 555 var numFrom = ""; 556 var numTo = ""; 557 for(var i = 0; i < obj.classList.length; i++) { 558 var clazz = obj.classList[i]; 559 if(clazz.indexOf("NUM_FROM_") >= 0) { 560 numFrom = clazz.replace("NUM_FROM_", ""); 561 } 562 if(clazz.indexOf("NUM_TO_") >= 0) { 563 numTo = clazz.replace("NUM_TO_", ""); 564 } 565 } 566 if(!isNullorUndefinedorEmpty(numFrom) || !isNullorUndefinedorEmpty(numTo)) { 567 if(!isNullorUndefinedorEmpty(numFrom) && !isNullorUndefinedorEmpty(numTo) && numFrom == numTo) { 568 isExistError = !Validator.check(obj, "num"+numFrom); 569 } else { 570 isExistError = !Validator.check(obj, "num"+numFrom+":"+numTo); 571 } 572 } 573 } 574 var countFrom = ""; 575 var countTo = ""; 576 for(var i = 0; i < obj.classList.length; i++) { 577 var clazz = obj.classList[i]; 578 if(clazz.indexOf("COUNT_FROM_") >= 0) { 579 countFrom = clazz.replace("COUNT_FROM_", ""); 580 } 581 if(clazz.indexOf("COUNT_TO_") >= 0) { 582 countTo = clazz.replace("COUNT_TO_", ""); 583 } 584 } 585 if(!isNullorUndefinedorEmpty(countFrom) || !isNullorUndefinedorEmpty(countTo)) { 586 if (className.indexOf("NUMBER") >= 0 && className.indexOf("HALF_ENGLISH_NUMBER") < 0) { 587 if(!isNullorUndefinedorEmpty(countFrom) && !isNullorUndefinedorEmpty(countTo) && countFrom == countTo) { 588 isExistError = !Validator.check(obj, "numCount"+countFrom); 589 } else { 590 isExistError = !Validator.check(obj, "numCount"+countFrom+":"+countTo); 591 } 592 } else { 593 if(!isNullorUndefinedorEmpty(countFrom) && !isNullorUndefinedorEmpty(countTo) && countFrom == countTo) { 594 isExistError = !Validator.check(obj, "count"+countFrom); 595 } else { 596 isExistError = !Validator.check(obj, "count"+countFrom+":"+countTo); 597 } 598 } 599 } 600 return isExistError; 601} 602 603function eventCheck(e) { 604 var obj = getEventObject(e); 605 var className = obj.className; 606 var isExistError = false;
607 608 eventCheckBefore(e); 609 610 if(className.indexOf("TEL_") >= 0) { 611 var preId = obj.id.replace("Middle", "Pre").replace("Post", "Pre"); 612 var middleId = obj.id.replace("Pre", "Middle").replace("Post", "Middle"); 613 var postId = obj.id.replace("Pre", "Post").replace("Middle", "Post"); 614 var pre = getValue(preId); 615 var middle = getValue(middleId); 616 var post = getValue(postId); 617 //ãã¹ã¦å ¥åããã¦ããªãå ´åã¯ãã§ãã¯ããªã 618 if(isNullorUndefinedorEmpty(pre) || isNullorUndefinedorEmpty(middle) || isNullorUndefinedorEmpty(post)) { 619 return false; 620 } 621 var id = obj.name.replace("Pre", "").replace("Middle", "").replace("Post", ""); 622 var required = false; 623 if(className.indexOf("REQUIRED_") >= 0) { 624 required = true; 625 } 626 //indexSymbolãå¿ è¦ã ããsubmitå¦çã§indexSymbolãè¨å®ããããã¨ã¯ãªã(ã¯ã) 627 isExistError = checkTel(id, required, ""); 628 } else if(className.indexOf("ZIP_") >= 0) { 629 var preId = obj.id.replace("Post", "Pre"); 630 var postId = obj.id.replace("Pre", "Post"); 631 var pre = getValue(preId); 632 var post = getValue(postId); 633 //ãã¹ã¦å ¥åããã¦ããªãå ´åã¯ãã§ãã¯ããªã 634 if(isNullorUndefinedorEmpty(pre) || isNullorUndefinedorEmpty(post)) { 635 return false; 636 } 637 var id = obj.name.replace("Pre", "").replace("Post", ""); 638 var required = false; 639 if(className.indexOf("REQUIRED_") >= 0) { 640 required = true; 641 } 642 //indexSymbolãå¿ è¦ã ããsubmitå¦çã§indexSymbolãè¨å®ããããã¨ã¯ãªã(ã¯ã) 643 isExistError = checkZip(id, required, ""); 644 } else { 645 isExistError = eventCheckRequired(e); 646 if(!isExistError) { 647 isExistError = eventCheckFormat(e); 648 } 649 if(!isExistError) { 650 isExistError = eventCheckRangeAndCount(e); 651 } 652 } 653 eventCheckAfter(e); 654 655 return isExistError; 656} 657function eventCheckBefore(e) { 658 659} 660function eventCheckAfter(e) { 661 662} 663 664function eventFormat(obj,eventName, setOrRemoveEventFunction) { 665 var className = obj.className; 666 if (className.indexOf("NUMBER") >= 0 && className.indexOf("HALF_ENGLISH_NUMBER") < 0) { 667 setOrRemoveEventFunction(obj, eventName, eventFormatNumber); 668 } else if (className.indexOf("DATE_YYMM") >= 0) { 669 // YYYY/MM 670 setOrRemoveEventFunction(obj, eventName, eventFormatDateYYMM); 671 } else if (className.indexOf("DATE_TIME") >= 0) { 672 // YYYY/MM/DD hh:mi:ss 673 setOrRemoveEventFunction(obj, eventName, eventFormatDateTime); 674 } else if (className.indexOf("DATE_HOUR_MINUTES") >= 0) { 675 // YYYY/MM/DD hh:mi 676 setOrRemoveEventFunction(obj, eventName, eventFormatDateHourMinutes); 677 } else if (className.indexOf("TIMESTAMP") >= 0) { 678 // YYYY/MM/DD hh:mi:ss sss 679 setOrRemoveEventFunction(obj, eventName, eventFormatTimestamp); 680 } else if (className.indexOf("DATE") >= 0) { 681 // YYYY/MM/DD 682 setOrRemoveEventFunction(obj, eventName, eventFormatDate); 683 } else if (className.indexOf("TIME") >= 0) { 684 // hh:mi 685 setOrRemoveEventFunction(obj, eventName, eventFormatTime); 686 } else if (className.indexOf("TEL_") >= 0 || className.indexOf("ZIP_") >= 0) { 687 setOrRemoveEventFunction(obj, eventName, eventTohalf); 688 } 689} 690 691function eventCheckRequired(e) { 692 var obj = getEventObject(e); 693 var className = obj.className; 694 if(className.indexOf("REQUIRED_") >= 0 && className.indexOf("REQUIRED_CONDITION_") < 0) { 695 if(obj.type == 'radio' || obj.type == 'checkbox') { 696 obj = getFirstElement(obj.name); 697 } 698 return !Validator.check(obj, "input", null, false); 699 } 700 return false; 701} 702 703// FunctionKey Trap 704// idãFNxxãClickãã¦å®ç¾ãã¾ããä¾ãã°ã<input type="hidden" id="F12" onClick="submit()">ã 705// formä¸ã«ã³ã¼ãã£ã³ã°ãã¦ããã¨ãonClickããF12ã§å®è¡ã§ãã 706// ã¾ãã¯ã <button name="F12" type="submit" class="Button65" id="F12" tabindex="901">OK</button>
707function eventKeyDown(e){ 708 var obj; 709 var objForm; 710 e = e || window.event; 711 eventKeyDownBefore(e); 712 var keyCode = getKeyCode(e); 713 var isMatchKeyCodeFnKey = false; 714 for (var f = 0; f < fnKeyCode.length; f++) { 715 if (keyCode == fnKeyCode[f]) { 716 isMatchKeyCodeFnKey = true; 717 break; 718 } 719 } 720 721 if (!isMatchKeyCodeFnKey) { 722 eventKeyDownAfter(e); 723 return; 724 } 725 726 objForm = document.forms; 727 var isCtrlKeyPush = e.ctrlKey; 728 for(var i = 0; i < objForm.length; i++) { 729 for(var n = 0; n < objForm[i].elements.length; n++) { 730 obj = objForm[i].elements[n]; 731 for(var p = 0; p < fnKeyName.length; p++) { 732 var targetFnkeyName = fnKeyName[p]; 733 if (isCtrlKeyPush) { 734 targetFnkeyName = "Ctrl" + fnKeyName[p]; 735 } 736 if (obj.id == targetFnkeyName && keyCode == fnKeyCode[p]) { 737 if (obj.type != 'hidden') { 738 // hiddenã«focusãéãã¨ã¨ã©ã¼ã¨ãªããããhiddené ç®ã®å ´åã¯é¤å¤ 739 obj.focus(); 740 } 741 if (!obj.disabled) { 742 obj.click(); 743 } 744 setKeyCode(e, KEY_NONE); 745 eventKeyDownAfter(e); 746 return false; 747 } 748 } 749 } 750 } 751 eventKeyDownAfter(e); 752} 753/** 754 * keyDownåå¦ç 755 */ 756function eventKeyDownBefore(e){}; 757/** 758 * keyDownå¾å¦ç 759 */ 760function eventKeyDownAfter(e){}; 761 762function getKeyCode(e){ 763 if (document.all) { 764 if (!isNullorUndefined(event)) { 765 return event.keyCode; 766 } 767 } 768 else if (document.getElementById) { 769 return (e.keyCode)? e.keyCode: e.charCode; 770 } 771 else if (document.layers) { 772 return e.which; 773 } 774} 775 776function setKeyCode(e, value){ 777 if (document.all) { 778 if (!isNullorUndefined(event)) { 779 event.keyCode = value; 780 } 781 } 782 else if (e.preventDefault) { 783 e.preventDefault(); 784 e.stopPropagation(); 785 } 786 else if (document.layers) { 787 e.which = value; 788 } 789} 790 791// EnterKey Trap 792function eventEntry(e){ 793 var obj = this; 794 795 keyCode = getKeyCode(e); 796 if (keyCode == KEY_BS){ //redaonlyã®BackSpaceã§ãæ»ãããé²ã 797 var evObj = getEventObject(e); 798 if (evObj.type == "text") { 799 if (evObj.readOnly) { 800 setKeyCode(e, KEY_NONE); 801 return false; 802 } 803 } 804 } 805 return true; 806} 807 808// å ¥åãã£ã¼ã«ãå ¨ã¦ãReadOnly 809function readOnlyBody(){ 810 var n; 811 var i; 812 var obj; 813 var objForm; 814 815 objForm = document.forms; 816 for(i = 0; i < objForm.length; i++){ 817 for(n = 0; n < objForm[i].elements.length; n++){ 818 obj = objForm[i].elements[n]; 819 if(isObjectInputType(obj) || isObjectButtonType(obj)){ 820 obj.readOnly=true; 821 if(isObjectTextInputType(obj) || isObjectSelectInputType(obj) || isObjectButtonType(obj)){ 822 obj.style.backgroundColor = "#F6F4EA"; 823 } 824 } 825 } 826 } 827} 828 829/*********************************************************************************************************************************************/ 830/** FireFoxç¨ããã¼ãã«ã¹ã¯ãã¼ã« 831/*********************************************************************************************************************************************/ 832function makeFixHeader(obj) { 833 // ãããã¼ã¨ãªãè¡ãªãã¸ã§ã¯ããåå¾ 834 var thead = getFirstElementByTagName(obj, "THEAD"); 835 // ãããã¼ãè¦ã¤ãããªããã°å¦çããªã 836 if (thead == null) return; 837 838 // ã¹ã¯ãã¼ã«è¨å®ããTABLEãåå¾ï¼THEADã®è¦ªãã¼ãã¯å¿ ãTABLEï¼ 839 var table = thead.parentNode; 840 841 // æ°ãããããã¼ã¨ãªãTABLEã使ããå屿§ãã³ãã¼ 842 var newTable = document.createElement("TABLE"); 843 newTable.width = table.offsetWidth; 844 newTable.className = table.className; 845 newTable.setAttribute("style", table.getAttribute("style"));
846 newTable.style.marginBottom = "0px"; 847 848 // ã¹ã¯ãã¼ã«ãã¼ã®å¹ 849 // ã»ã³ã¿ãªã³ã°ããå ´åãã¹ã¯ãã¼ã«ãã¼ã®åã ãå·¦ã«ãããã®ã§è£æ£ 850 var scrollBar = obj.offsetWidth - table.offsetWidth; 851 newTable.style.marginRight = scrollBar + "px"; 852 853 var newHead = thead.cloneNode(true); 854 newTable.appendChild(newHead); 855 856 // Divã®åã«æ¿å ¥ 857 obj.parentNode.insertBefore(newTable, obj); 858 859 // THEADã¯é表示(ãããã¼ã®ã¿ã«ãµã¤ãºæå®ããã¦ããå ´åãããã®ã§ãæ§ãããã¼ã®é表示ã¯å¿ ãæå¾) 860 var tr = getFirstElementByTagName(thead, "TR"); 861 if (tr != null) { 862 // ãããã¼é¨ãé ããè¡ã®é«ããï¼ã«ãããï¼display:none;ã使ç¨ããã¨ã»ã«å¹ ãå¤ãã£ã¦ãã¾ãï¼ 863 tr.style.visibility = "hidden"; 864 for(var i=0 ; i<tr.cells.length ; i++) { 865 var cell = tr.cells[i]; 866 cell.innerHTML = ""; 867 cell.style.padding = "0px"; 868 } 869 } 870 871} 872 873function getFirstElementByTagName(obj, name) { 874 var child; 875 for(var i=0 ; i<obj.childNodes.length ; i++) { 876 child = obj.childNodes[i]; 877 if (child.tagName == name) { 878 // æåã«è¦ã¤ãã£ã 879 return child; 880 } 881 else if (child.hasChildNodes()) { 882 var find = getFirstElementByTagName(child, name); 883 if (find != null) return find; 884 } 885 } 886 return null; 887} 888 889function fixColWidth(obj, arr, current) { 890 if (obj == null) return; 891 current = (current==null)?0:current; 892 893 // ã»ããããå¹ ã®é å 894 var result = new Array(); 895 896 // ã»ã«å¹ ãè¨å® 897 var child; 898 var width; 899 for(var i=0 ; i<obj.childNodes.length ; i++) { 900 child = obj.childNodes[i]; 901 if (child.tagName == "TD" || child.tagName == 'TH') { 902 if (arr != null && arr.length > current) { 903 width = arr[current]; 904 } 905 else { 906 // è¨å®ããå¤ããªããã°ç¾å¨å¹ 907 width = child.offsetWidth; 908 } 909 child.style.width = width + "px"; 910 child.width = width; 911 912 result[result.length] = width; 913 current ++; 914 } 915 else if (child.hasChildNodes()) { 916 var ret = fixColWidth(child, arr, current); 917 for(var j=0 ; j<ret.length ; j++) result[result.length] = ret[j]; 918 } 919 } 920 921 return result; 922} 923 924/*********************************************************************************************************************************************/ 925/** å ¥åãã©ã¼ã«ã¹ 926/*********************************************************************************************************************************************/ 927function inCursor(obj){ 928 obj.className = removeStyleClass(obj.className) + " focus"; 929} 930 931function outCursor(obj){ 932 obj.className = removeStyleClass(obj.className); 933} 934 935function removeStyleClass(className) { 936 var ac = className.split(" "); 937 className = ac[0]; 938 for (var i = 1; i < ac.length; i++) { 939 if (ac[i] != "focus") { 940 className += " " + ac[i]; 941 } 942 } 943 return className; 944} 945 946/*********************************************************************************************************************************************/ 947/** Exception: ä¾å¤ã¯ã©ã¹ 948/*********************************************************************************************************************************************/ 949// 950// æ°åä¾å¤ 951// æ°å以å¤ã®æåãæ¤è¨¼ããå ´åã«ã¹ãã¼ãã 952// 953var ExNumberException = function() { 954 this.initialize.apply(this, arguments); 955} 956ExNumberException.prototype = { 957 message: "", 958 name: "ExNumberException", 959 960 initialize: function(message) { 961 this.message = message; 962 }, 963 964 toString: function () { 965 return this.name + ': "' + this.message + '"'; 966 } 967}; 968 969// 970// æ¥ä»ä¾å¤ 971// èªèã§ããªãæ¥ä»æ¸å¼ããæ¥ä»ã®å¦¥å½æ§ã®æ¤è¨¼ã§ã¹ãã¼ãã 972// 973var ExDateTimeException = function() { 974 this.initialize.apply(this, arguments); 975} 976ExDateTimeException.prototype = { 977 message: "", 978 name: "ExDateTimeException", 979 980 initialize: function(message) { 981 this.message = message; 982 }, 983 984 toString: function () { 985 return this.name + ': "' + this.message + '"'; 986 } 987}; 988 989/*********************************************************************************************************************************************/ 990/** ExNumber: æ°åã¯ã©ã¹ 991/*********************************************************************************************************************************************/ 992var ExNumber = function() { 993 this.initialize.apply(this, arguments); 994} 995ExNumber.prototype = { 996 // ã¤ã³ã¹ã¿ã³ã¹å¤æ° 997 num: "", 998 minus: false, 999 1000 // 1001 // ã³ã³ã¹ãã©ã¯ã¿ 1002 // str: æ°åæåå 1003 // 1004 initialize: function(str) { 1005 if (str != null) { 1006 str = str.toString(); 1007 str = trim(str); 1008 str = removeCanma(str); // ã«ã³ããå¤ã 1009 str = this.zeroSuppress(str); // ã¼ããµãã¬ã¹ 1010 1011 // æ°å¤ãã§ã㯠1012 for(var i=0 ; i<str.length ; i++) { 1013 var c = str.substring(i, i+1); 1014 if (c != "-" && c != "." && (c < "0" || c > "9")) {
1015 throw new ExNumberException(Validator.rule.msg.num.nonumber); 1016 } 1017 } 1018 1019 // éä¸ã«ãããã¤ãã¹ãé¤å»ï¼123-456 â 12345) 1020 str = str.replace(/([0-9.]+)\-+([0-9.]*?)/g, "$1$2"); 1021 1022 // è¤æ°ãã"."ãæå¾ãæ®ãé¤å»ï¼123.45.6 â 12345.6) 1023 var idx = str.lastIndexOf("."); 1024 if (idx >= 0) { 1025 var n = str.substring(0, idx); 1026 n = n.replace(/([0-9]*?)\.+([0-9]*?)/g, "$1$2"); 1027 str = n + str.substring(idx); 1028 if (str.substring(idx).length <= 1) { 1029 str += "0"; 1030 } 1031 } 1032 if (str.replace(/[-0.]/g, "") == "") str = "0"; 1033 this.num = str; 1034 1035 if (this.num.substring(0, 1) == "-") this.minus = true; 1036 } 1037 }, 1038 1039 // 1040 // ã¼ããµãã¬ã¹ 1041 // String num: åã¼ããµãã¬ã¹ããæ°åæåå 1042 // return: åã¼ããµãã¬ã¹ããçµæãè¿ã 1043 // 1044 zeroSuppress: function(num) { 1045 return num.replace(/^(-*?)0+([0-9]+.*)/, "$1$2"); 1046 }, 1047 1048 // 1049 // æå®æ°åæååã®ãã¤ãã¹æ¤è¨¼ 1050 // String num: åã¼ããµãã¬ã¹ããæ°åæåå 1051 // return: è² ã®å ´åã¯trueãæ£ã®å ´åã¯falseãè¿ã 1052 // 1053 isMinus: function() { 1054 return this.minus; 1055 }, 1056 1057 // 1058 // 宿°ï¼å°æ°ç¹ããï¼æ¤è¨¼ 1059 // return: 宿°ã®å ´åã¯trueãæ´æ°ã®å ´åã¯falseãè¿ã 1060 // 1061 isFloat: function() { 1062 return (this.num.indexOf(".") >= 0)?true:false; 1063 }, 1064 1065 // 1066 // 絶対å¤ã®åå¾ 1067 // return: 絶対å¤ãè¿ã 1068 // 1069 abs: function() { 1070 return this.num.replace(/-/g, ""); 1071 }, 1072 1073 // 1074 // Numberã¯ã©ã¹ã«å¤æ 1075 // return: Numberã¯ã©ã¹ãè¿ã 1076 // 1077 toNumber: function() { 1078 return new Number(this.num); 1079 }, 1080 1081 // 1082 // æ°åæååã®åå¾ 1083 // return: æ°åæååãæ¸å¼åãããã®ã¾ã¾è¿ã 1084 // 1085 toString: function() { 1086 return this.num; 1087 }, 1088 1089 // 1090 // æ°åæååã®æ¸å¼ååå¾ 1091 // fmt: æ¸å¼ 1092 // æ¸å¼ã¯"#,##0.0" ã "000000"ã§æå®å¯è½ï¼Default:"#,##0.0"ï¼ 1093 // return: æ¸å¼åããæ°åæååãè¿ã 1094 // 1095 toFormatString: function(fmt) { 1096 var s = this.num; 1097 1098 // ãµã¤ã³é¨ãæ¶ããæ´æ°é¨ã¨å°æ°é¨ã«åãã 1099 s = s.replace(/-/g, ""); 1100 var idx = s.indexOf("."); 1101 var f = null; 1102 if (idx >= 0) { 1103 f = s.substring(idx+1); // å°æ° 1104 s = s.substring(0, idx); // æ´æ° 1105 } 1106 if (s == "0" && fmt.indexOf("#.") >= 0) s = ""; 1107 if (s == "" && fmt.indexOf("0.") >= 0) s = "0"; 1108 1109 // æ¸å¼ 1110 if (fmt == null || fmt == "") { 1111 fmt = "#,##0"; 1112 } 1113 else { 1114 // åå¾ç©ºç½ã¯ç¡è¦ 1115 fmt = trim(fmt); 1116 } 1117 1118 // æ¸å¼ãã§ãã¯("-#,##0.00" or "0000000") 1119 if (fmt.replace(/0/g, "") == "") { 1120 // æ¸å¼00000ã®å ´åã¯å°æ°é¨ã¯å¦çããªã 1121 var len = fmt.length; 1122 if (s.length >= len) { 1123 return s; 1124 } 1125 else { 1126 var zero = ""; 1127 for(var i=0 ; i<len-s.length ; i++) { 1128 zero += "0"; 1129 } 1130 return zero+s; 1131 } 1132 } 1133 else if (fmt.replace(/[-#0.,]/g, "") == "") { // æ¸å¼ã¯å³å¯ãªãã§ãã¯ã¯ããªããæå®æåãããã°OK 1134 var n = ""; 1135 var canma = ""; 1136 if (fmt.indexOf(",") >= 0) canma = ","; 1137 1138 // æ´æ°é¨ 1139 var len = s.length; 1140 for(var i=0 ; i<len ; i++) { 1141 if (i > 0 && (i%3) == 0) { 1142 n = canma + n; 1143 } 1144 n = s.substring(len-i-1, len-i) + n; 1145 } 1146 // å°æ°é¨ï¼æå®ãããå ´åãæå®ããªãå ´åã¯å¦çããªãï¼ 1147 idx = fmt.indexOf("."); 1148 if (idx >= 0) { 1149 n += "."; 1150 len = fmt.substring(idx).length-1; 1151 if (f == null) { 1152 for(var i=0 ; i<len ; i++) n += "0"; 1153 } 1154 else { 1155 if (f.length >= len) { 1156 n += f.substring(0, len); 1157 } 1158 else { 1159 n += f; 1160 for(var i=0 ; i<len-f.length ; i++) n += "0"; 1161 } 1162 } 1163 } 1164 if (this.isMinus() && n.replace(/[0.]/g, "") != "") n = "-" + n; 1165 return n; 1166 } 1167 1168 // 該å½ããªãæ¸å¼ã§ã¯å¤æããªã 1169 return this.num; 1170 } 1171}; 1172 1173/*********************************************************************************************************************************************/ 1174/** ExDateTime: æ¥ä»ï¼æéã¯ã©ã¹ 1175/*********************************************************************************************************************************************/ 1176var ExDateTime = function() { 1177 this.initialize.apply(this, arguments); 1178} 1179ExDateTime.prototype = { 1180 date: null, 1181 1182 // 1183 // ã³ã³ã¹ãã©ã¯ã¿ 1184 // 1185 initialize: function() { 1186 this.date = new Date(); 1187 }, 1188 1189 // 1190 // æ¥æãåå¾ 1191 // return: æ¥æãè¿ã 1192 // 1193 get: function() { 1194 return this.date; 1195 }, 1196 1197 // 1198 // æ¥æãè¨å®
1199 // String(int) year : å¹´ï¼çç¥(null)ããå ´åã®Defaultã¯å½å¹´ï¼ 1200 // String(int) month : æï¼1ï½12ã®ç¯å²ãçç¥(null)ããå ´åã®Defaultã¯å½æï¼ 1201 // String(int) day : æ¥ï¼1ï½31ã®ç¯å²ãçç¥(null)ããå ´åã®Defaultã¯å½æ¥ï¼ 1202 // String(int) hour : æï¼0ï½23ã®ç¯å²ãçç¥(null)ããå ´åã®Defaultã¯0ï¼ 1203 // String(int) minute: åï¼0ï½59ã®ç¯å²ãçç¥(null)ããå ´åã®Defaultã¯0ï¼ 1204 // String(int) second: ç§ï¼0ï½59ã®ç¯å²ãçç¥(null)ããå ´åã®Defaultã¯0ï¼ 1205 // 1206 // 夿ã«å¤±æããå ´åã¯Exceptionãã¹ãã¼ããã 1207 // ExDateTimeException: æ¥ä»ã®èª¤ã 1208 // ExNumberException : æ¥ä»æ°åé¨åã«æå 1209 // 1210 set: function(year, month, day, hour, minute, second, millisec) { 1211 var yy = this.toNumber(year, this.date.getFullYear()); 1212 if (yy < 100) yy += 2000; // ï¼æ¡å ¥åã®å ´åã¯+2000ï¼å¹´ï¼ 1213 var mm = this.toNumber(month, this.date.getMonth() + 1); 1214 var dd = this.toNumber(day, this.date.getDate()); 1215 var hh = this.toNumber(hour, 0); 1216 var mi = this.toNumber(minute, 0); 1217 var ss = this.toNumber(second, 0); 1218 var sss = this.toNumber(millisec, 0); 1219 1220 // For Debug 1221 // alert(yy + "," + mm + "," + dd + "," + hh + "," + mi + "," + ss + "," + sss); 1222 1223 // æ¥ä»ã®å¦¥å½æ§ãã§ã㯠1224 if (!this.checkDate(yy, mm, dd, hh, mi, ss, sss)) { 1225 throw new ExDateTimeException(Validator.rule.msg.date.nodate); 1226 } 1227 1228 this.date = new Date(yy, mm-1, dd, hh, mi, ss, sss); 1229 }, 1230 1231 // 1232 // æåãæ°åã«å¤æ 1233 // String strNum : 夿ããæ°åæåå 1234 // int def : strNumãnullã®å ´åã®Defaultå¤ 1235 // return : 夿ããæ°åã 1236 // 1237 // 夿ã«å¤±æããå ´åã¯Exceptionãã¹ãã¼ããã 1238 // ExNumberException : æ¥ä»æ°åé¨åã«æå 1239 // 1240 toNumber: function(strNum, def) { 1241 var num = 0; 1242 if (strNum == null || strNum == "") { 1243 return def; 1244 } else if (typeof strNum == "number") { 1245 return strNum; 1246 } else { 1247 num = parseInt(strNum, 10); 1248 if (isNaN(num)) { 1249 throw new ExNumberException(Validator.rule.msg.num.nonumber); 1250 } 1251 } 1252 return num; 1253 }, 1254 1255 // 1256 // æ¥ä»ã®å¦¥å½æ§ãã§ã㯠1257 // int year : å¹´ 1258 // int month : æ 1259 // int day : æ¥ 1260 // int hour : æ 1261 // int minute : å 1262 // int second : ç§ 1263 // int msec : ããªç§ 1264 // return : æ£å¸¸ã®å ´åã¯trueãã¨ã©ã¼ãããå ´åã¯falseãè¿ãã 1265 // 1266 checkDate: function(year, month, day, hour, minute, second, msec) { 1267 // æ 1268 if (month < 1 || month > 12) return false; 1269 1270 // æ¥ï¼éå¹´ãã§ãã¯å«ãï¼ 1271 var lastDate = ExDateTimeUtils.getLastDayOfMonth(year, month); 1272 if (day < 1 || day > lastDate) return false; 1273 1274 // æ 1275 if (hour < 0 || hour > 23) return false; 1276 1277 // å 1278 if (minute < 0 || minute > 59) return false; 1279 1280 // ç§ 1281 if (second < 0 || second > 59) return false; 1282 1283 // ããªç§ 1284 if (msec < 0 || msec > 999) return false; 1285 1286 return true; 1287 }, 1288 1289 // 1290 // å¹´æ(YYYY/MM)å½¢å¼ã®æ¥ä»ãè§£æ 1291 // String str : è§£æããæ¥ä»æåå 1292 // return : æ£å¸¸ã®å ´åã¯è§£æããæ¥ä»ãæã¤èªã¤ã³ã¹ã¿ã³ã¹ãè¿ãã 1293 // 1294 // è§£æã«å¤±æããå ´åã¯Exceptionãã¹ãã¼ããã 1295 // ExDateTimeException: æ¥ä»ã®å ¥åå½¢å¼èª¤ã 1296 // 1297 parseYM: function(str) { 1298 if (str.match(/^(\d{2})$/)) { // mm 1299 this.set(null, RegExp.$1, 1, 0, 0, 0); 1300 } else if (str.match(/^(\d{4})$/)) { // yymm 1301 this.set(str.substring(0, 2), str.substring(2), 1, 0, 0, 0); 1302 } else if (str.match(/^(\d{6})$/)) { // yyyymm 1303 this.set(str.substring(0, 4), str.substring(4), 1, 0, 0, 0); 1304 } else if (str.match(/^(\d{2,4})\/{0,1}(\d{1,2})$/)) { // yyyy/mm
1305 this.set(RegExp.$1, RegExp.$2, 1, 0, 0, 0); 1306 } else { 1307 throw new ExDateTimeException(Validator.rule.msg.date.input_yyyymm); 1308 } 1309 return this; 1310 }, 1311 1312 // 1313 // æ¥æ(YYYY/MM/DD hh:mi:ss)å½¢å¼ã®æ¥ä»ãè§£æ 1314 // String str : è§£æããæ¥ä»æåå 1315 // return : æ£å¸¸ã®å ´åã¯è§£æããæ¥ä»ãæã¤èªã¤ã³ã¹ã¿ã³ã¹ãè¿ãã 1316 // 1317 // è§£æã«å¤±æããå ´åã¯Exceptionãã¹ãã¼ããã 1318 // ExDateTimeException: æ¥ä»ã®å ¥åå½¢å¼èª¤ã 1319 // 1320 parseDate: function(str, isTimeNeed) { 1321 if (str.match(/^(\d{2})$/)) { // dd 1322 this.set(null, null, RegExp.$1, 0, 0, 0); 1323 } else if (str.match(/^(\d{4})$/)) { // mmdd 1324 this.set(null, str.substring(0, 2), str.substring(2), 0, 0, 0); 1325 } else if (str.match(/^(\d{6})$/)) { // yymmdd 1326 this.set(str.substring(0, 2), str.substring(2, 4), str.substring(4), 0, 0, 0); 1327 } else if (str.match(/^(\d{8})$/)) { // yyyymmdd 1328 this.set(str.substring(0, 4), str.substring(4, 6), str.substring(6), 0, 0, 0); 1329 } else if (str.match(/^(\d{2,4})\/{0,1}(\d{1,2})\/{0,1}(\d{1,2})$/)) { // yyyy/mm/dd 1330 this.set(RegExp.$1, RegExp.$2, RegExp.$3, 0, 0, 0); 1331 } else if (isTimeNeed && str.match(/^(\d{2,4})\/{0,1}(\d{1,2})\/{0,1}(\d{1,2})\s*?(\d{0,2})\:{0,1}(\d{0,2})\:{0,1}(\d{0,2})$/)) { // yyyy/mm/dd hh:mi:ss 1332 this.set(RegExp.$1, RegExp.$2, RegExp.$3, RegExp.$4, RegExp.$5, RegExp.$6); 1333 } else { 1334 var message; 1335 if (isTimeNeed) { 1336 message = Validator.rule.msg.date.input_yyyymmddhhmmss; 1337 } else { 1338 message = Validator.rule.msg.date.input_yyyymmdd; 1339 } 1340 throw new ExDateTimeException(message); 1341 } 1342 return this; 1343 }, 1344 1345 // 1346 // æ¥æ(YYYY/MM/DD hh:mi)å½¢å¼ã®æ¥ä»ãè§£æ 1347 // String str : è§£æããæ¥ä»æåå 1348 // return : æ£å¸¸ã®å ´åã¯è§£æããæ¥ä»ãæã¤èªã¤ã³ã¹ã¿ã³ã¹ãè¿ãã 1349 // 1350 // è§£æã«å¤±æããå ´åã¯Exceptionãã¹ãã¼ããã 1351 // ExDateTimeException: æ¥ä»ã®å ¥åå½¢å¼èª¤ã 1352 // 1353 parseDateHourMinutes: function(str) { 1354 if (str.match(/^(\d{2})$/)) { // dd 1355 this.set(null, null, RegExp.$1, 0, 0, 0); 1356 } else if (str.match(/^(\d{4})$/)) { // mmdd 1357 this.set(null, str.substring(0, 2), str.substring(2), 0, 0, 0); 1358 } else if (str.match(/^(\d{6})$/)) { // yymmdd 1359 this.set(str.substring(0, 2), str.substring(2, 4), str.substring(4), 0, 0, 0); 1360 } else if (str.match(/^(\d{8})$/)) { // yyyymmdd 1361 this.set(str.substring(0, 4), str.substring(4, 6), str.substring(6), 0, 0, 0); 1362 } else if (str.match(/^(\d{2,4})\/{0,1}(\d{1,2})\/{0,1}(\d{1,2})$/)) { // yyyy/mm/dd 1363 this.set(RegExp.$1, RegExp.$2, RegExp.$3, 0, 0, 0); 1364 } else if (str.match(/^(\d{2,4})\/{0,1}(\d{1,2})\/{0,1}(\d{1,2})\s*?(\d{0,2})\:{0,1}(\d{0,2})$/)) { // yyyy/mm/dd hh:mi 1365 this.set(RegExp.$1, RegExp.$2, RegExp.$3, RegExp.$4, RegExp.$5, 0); 1366 } else { 1367 var message = Validator.rule.msg.date.input_yyyymmddhhmm; 1368 throw new ExDateTimeException(message); 1369 } 1370 return this; 1371 }, 1372 1373 // 1374 // Timestamp(YYYY/MM/DD hh:mi:ss sss)å½¢å¼ã®æ¥ä»ãè§£æ 1375 // String str : è§£æããæ¥ä»æåå 1376 // return : æ£å¸¸ã®å ´åã¯è§£æããæ¥ä»ãæã¤èªã¤ã³ã¹ã¿ã³ã¹ãè¿ãã 1377 // 1378 // è§£æã«å¤±æããå ´åã¯Exceptionãã¹ãã¼ããã 1379 // ExDateTimeException: æ¥ä»ã®å ¥åå½¢å¼èª¤ã 1380 // 1381 parseTimestamp: function(str, isTimeNeed) { 1382 if (str.match(/^(\d{2})$/)) { // dd 1383 this.set(null, null, RegExp.$1, 0, 0, 0); 1384 } else if (str.match(/^(\d{4})$/)) { // mmdd 1385 this.set(null, str.substring(0, 2), str.substring(2), 0, 0, 0); 1386 } else if (str.match(/^(\d{6})$/)) { // yymmdd 1387 this.set(str.substring(0, 2), str.substring(2, 4), str.substring(4), 0, 0, 0); 1388 } else if (str.match(/^(\d{8})$/)) { // yyyymmdd 1389 this.set(str.substring(0, 4), str.substring(4, 6), str.substring(6), 0, 0, 0); 1390 } else if (str.match(/^(\d{2,4})\/{0,1}(\d{1,2})\/{0,1}(\d{1,2})$/)) { // yyyy/mm/dd 1391 this.set(RegExp.$1, RegExp.$2, RegExp.$3, 0, 0, 0); 1392 } else if (isTimeNeed && str.match(/^(\d{2,4})\/{0,1}(\d{1,2})\/{0,1}(\d{1,2})\s*?(\d{0,2})\:{0,1}(\d{0,2})\:{0,1}(\d{0,2})$/)) { // yyyy/mm/dd hh:mi:ss 1393 this.set(RegExp.$1, RegExp.$2, RegExp.$3, RegExp.$4, RegExp.$5, RegExp.$6); 1394 } else if (isTimeNeed && str.match(/^(\d{2,4})\/{0,1}(\d{1,2})\/{0,1}(\d{1,2})\s*?(\d{0,2})\:{0,1}(\d{0,2})\:{0,1}(\d{0,2})\s*?(\d{0,3})$/)) { // yyyy/mm/dd hh:mi:ss sss 1395 this.set(RegExp.$1, RegExp.$2, RegExp.$3, RegExp.$4, RegExp.$5, RegExp.$6, RegExp.$7); 1396 } else { 1397 var message; 1398 if (isTimeNeed) { 1399 message = Validator.rule.msg.date.input_yyyymmddhhmmsssss; 1400 } else { 1401 message = Validator.rule.msg.date.input_yyyymmdd; 1402 } 1403 throw new ExDateTimeException(message); 1404 } 1405 return this; 1406 }, 1407 1408 // 1409 // æé(hh:mi:ss)å½¢å¼ã®æ¥ä»ãè§£æ
1410 // String str : è§£æããæéæåå 1411 // return : æ£å¸¸ã®å ´åã¯è§£æããæéãæã¤èªã¤ã³ã¹ã¿ã³ã¹ãè¿ãã 1412 // 1413 // è§£æã«å¤±æããå ´åã¯Exceptionãã¹ãã¼ããã 1414 // ExDateTimeException: æéã®å ¥åå½¢å¼èª¤ã 1415 // 1416 parseTime: function(str) { 1417 if (str.match(/^(\d{1,2})$/)) { // hh 1418 this.set(null, null, null, RegExp.$1, 0, 0); 1419 } else if (str.match(/^(\d{4})$/)) { // hhmm 1420 this.set(null, null, null, str.substring(0, 2), str.substring(2, 4), 0); 1421 } else if (str.match(/^(\d{6})$/)) { // hhmmss 1422 this.set(null, null, null, str.substring(0, 2), str.substring(2, 4), str.substring(4)); 1423 } else if (str.match(/^(\d{1,2})\:(\d{1,2})$/)) { // hh:mm 1424 try { 1425 this.set(null, null, null, RegExp.$1, RegExp.$2, 0); 1426 } catch (e) { 1427 e.message = Validator.rule.msg.date.notime; 1428 throw e; 1429 } 1430 } else if (str.match(/^(\d{1,2})\:(\d{1,2})\:(\d{1,2})$/)) { // hh:mm:ss 1431 try { 1432 this.set(null, null, null, RegExp.$1, RegExp.$2, RegExp.$3); 1433 } catch (e) { 1434 e.message = Validator.rule.msg.date.notime; 1435 throw e; 1436 } 1437 } else { 1438 throw new ExDateTimeException(Validator.rule.msg.date.input_hhmm); 1439 } 1440 return this; 1441 }, 1442 1443 // 1444 // å¹´ã®å ç® 1445 // String(int) num : å ç®ããæ°å¤ï¼ãã¤ãã¹ã®å ´åã¯æ¸ç®ï¼ 1446 // return : å ç®å¾ã®èªã¤ã³ã¹ã¿ã³ã¹ãè¿ãã 1447 // 1448 // æ°å以å¤ã®æåãæå®ããå ´åã¯Exceptionãã¹ãã¼ãã 1449 // ExNumberException: æ°å以å¤ã®æå 1450 // 1451 addYears: function(num) { 1452 num = this.toNumber(num, 0); 1453 this.date.setFullYear(this.date.getFullYear() + num); 1454 return this; 1455 }, 1456 1457 // 1458 // æã®å ç® 1459 // String(int) num : å ç®ããæ°å¤ï¼ãã¤ãã¹ã®å ´åã¯æ¸ç®ï¼ 1460 // return : å ç®å¾ã®èªã¤ã³ã¹ã¿ã³ã¹ãè¿ãã 1461 // 1462 // æ°å以å¤ã®æåãæå®ããå ´åã¯Exceptionãã¹ãã¼ãã 1463 // ExNumberException: æ°å以å¤ã®æå 1464 // 1465 addMonths: function(num) { 1466 num = this.toNumber(num, 0); 1467 this.date.setMonth(this.date.getMonth() + num); 1468 return this; 1469 }, 1470 1471 // 1472 // æ¥ã®å ç® 1473 // String(int) num : å ç®ããæ°å¤ï¼ãã¤ãã¹ã®å ´åã¯æ¸ç®ï¼ 1474 // return : å ç®å¾ã®èªã¤ã³ã¹ã¿ã³ã¹ãè¿ãã 1475 // 1476 // æ°å以å¤ã®æåãæå®ããå ´åã¯Exceptionãã¹ãã¼ãã 1477 // ExNumberException: æ°å以å¤ã®æå 1478 // 1479 addDays: function(num) { 1480 num = this.toNumber(num, 0); 1481 this.date.setDate(this.date.getDate() + num); 1482 return this; 1483 }, 1484 1485 // 1486 // æã®å ç® 1487 // String(int) num : å ç®ããæ°å¤ï¼ãã¤ãã¹ã®å ´åã¯æ¸ç®ï¼ 1488 // return : å ç®å¾ã®èªã¤ã³ã¹ã¿ã³ã¹ãè¿ãã 1489 // 1490 // æ°å以å¤ã®æåãæå®ããå ´åã¯Exceptionãã¹ãã¼ãã 1491 // ExNumberException: æ°å以å¤ã®æå 1492 // 1493 addHours: function(num) { 1494 num = this.toNumber(num, 0); 1495 this.date.setHours(this.date.getHours() + num); 1496 return this; 1497 }, 1498 1499 // 1500 // åã®å ç® 1501 // String(int) num : å ç®ããæ°å¤ï¼ãã¤ãã¹ã®å ´åã¯æ¸ç®ï¼ 1502 // return : å ç®å¾ã®èªã¤ã³ã¹ã¿ã³ã¹ãè¿ãã 1503 // 1504 // æ°å以å¤ã®æåãæå®ããå ´åã¯Exceptionãã¹ãã¼ãã 1505 // ExNumberException: æ°å以å¤ã®æå 1506 // 1507 addMinutes: function(num) { 1508 num = this.toNumber(num, 0); 1509 this.date.setMinutes(this.date.getMinutes() + num); 1510 return this; 1511 }, 1512 1513 // 1514 // ç§ã®å ç® 1515 // String(int) num : å ç®ããæ°å¤ï¼ãã¤ãã¹ã®å ´åã¯æ¸ç®ï¼ 1516 // return : å ç®å¾ã®èªã¤ã³ã¹ã¿ã³ã¹ãè¿ãã 1517 // 1518 // æ°å以å¤ã®æåãæå®ããå ´åã¯Exceptionãã¹ãã¼ãã
1519 // ExNumberException: æ°å以å¤ã®æå 1520 // 1521 addSeconds: function(num) { 1522 num = this.toNumber(num, 0); 1523 this.date.setSeconds(this.date.getSeconds() + num); 1524 return this; 1525 }, 1526 1527 // 1528 // çµéæ¥æ°ãåå¾ 1529 // Date(ExDateTime) date : çµéæ¥æ°ãè¨ç®ããæ¥ä» 1530 // return çµéæ¥æ°ãè¿ãã 1531 // 1532 progressDays: function(date) { 1533 var d1 = this.date.getTime(); 1534 var d2; 1535 if (date instanceof ExDateTime) d2 = date.get().getTime(); 1536 else if (date instanceof Date) d2 = date.getTime(); 1537 else return null; 1538 1539 var d = d2 - d1; 1540 return Math.floor(d / (24*60*60*1000)); 1541 }, 1542 1543 // 1544 // çµéæéãåå¾ 1545 // Date(ExDateTime) date : çµéæéãè¨ç®ããæ¥ä» 1546 // return çµéæéæ°ãè¿ãã 1547 // 1548 progressTimes: function(date) { 1549 var d1 = this.date.getTime(); 1550 var d2; 1551 if (date instanceof ExDateTime) d2 = date.get().getTime(); 1552 else if (date instanceof Date) d2 = date.getTime(); 1553 else return null; 1554 1555 var d = d2 - d1; 1556 return Math.floor(d / (60*60*1000)); 1557 }, 1558 1559 // 1560 // æ¥ä»ã®æ¯è¼ 1561 // Date(ExDateTime) date : æ¯è¼ããæ¥ä» 1562 // return æ¯è¼ããæ¥ä»ã大ããå ´åã¯è² ã®æ°ãåãå ´åã¯ï¼ãå°ããå ´åã¯æ£ã®æ°ãè¿ãã 1563 // 1564 compare: function(date) { 1565 var d1 = this.date.getTime(); 1566 var d2; 1567 if (date instanceof ExDateTime) d2 = date.get().getTime(); 1568 else if (date instanceof Date) d2 = date.getTime(); 1569 else return null; 1570 1571 if (d1 == d2) return 0; 1572 else if (d1 < d2) return -1; 1573 else return 1; 1574 }, 1575 1576 // 1577 // æ¥æã®æåååå¾ 1578 // return : æ¥æã®æååãè¿ããï¼æ¸å¼ã¯Date#toString()ã«ä¾åããï¼ 1579 // 1580 toString: function() { 1581 return this.date.toString(); 1582 } 1583}; 1584 1585/*********************************************************************************************************************************************/ 1586/** ExDateTimeUtils: æ¥ä»ï¼æéã¦ã¼ãã£ãªãã£ã¯ã©ã¹ 1587/*********************************************************************************************************************************************/ 1588var ExDateTimeUtils = { 1589 1590 // 1591 // æ¥ä»ã®æ¸å¼å 1592 // Date date : æ¸å¼åããæ¥ä»ï¼Dateã¯ã©ã¹ï¼ 1593 // String fmt : æ¸å¼ 1594 // æ¸å¼ï¼ 1595 // # : Escapeæåãé£ç¶ããç´å¾ã®æ¸å¼æåãã¨ã¹ã±ã¼ããã 1596 // Y : ï¼æ¡ã®è¥¿æ¦å¹´ 1597 // y : ä¸ï¼æ¡ã®è¥¿æ¦å¹´ 1598 // m : æï¼ï¼æ¡ï¼ï¼æ¡ã®å ´åã¯åã«0ãä»ãã 1599 // n : æï¼ï¼ï½ï¼æ¡ï¼å0ã¯ä»ããªã 1600 // d : æ¥ï¼ï¼æ¡ï¼ï¼æ¡ã®å ´åã¯åã«0ãä»ãã 1601 // j : æ¥ï¼ï¼ï½ï¼æ¡ï¼å0ã¯ä»ããªã 1602 // w : ææ¥ï¼0:æ¥ææ¥ ... 6:åææ¥ï¼ 1603 // a : ååï¼åå¾ã®ç¥å·å°æåï¼am/pmï¼ 1604 // A : ååï¼åå¾ã®ç¥å·å¤§æåï¼AM/PMï¼ 1605 // H : æï¼24æéå¶ ï¼æ¡ï¼ï¼æ¡ã®å ´åã¯åã«0ãä»ãã 1606 // h : æï¼12æéå¶ ï¼æ¡ï¼ï¼æ¡ã®å ´åã¯åã«0ãä»ãã 1607 // G : æï¼24æéå¶ ï¼ï½ï¼æ¡ï¼å0ã¯ä»ããªã 1608 // g : æï¼12æéå¶ ï¼ï½ï¼æ¡ï¼å0ã¯ä»ããªã 1609 // i : åï¼ï¼æ¡ï¼ï¼æ¡ã®å ´åã¯åã«0ãä»ãã 1610 // s : ç§ï¼ï¼æ¡ï¼ï¼æ¡ã®å ´åã¯åã«0ãä»ãã 1611 // f : ããªç§ï¼ï¼æ¡ï¼ï¼æ¡ä»¥ä¸ã®å ´åã¯åã«0ãä»ãã 1612 // t : æå®æã®æçµæ¥ 1613 // L : ãããå¹´ï¼ãããå¹´ã®å ´åã¯"true"ã以å¤ã®å ´åã¯"false"ï¼ 1614 // z : æå®æ¥ã®åå¹´1æ1æ¥ããæ°ããçµéæ¥æ° 1615 // 以å¤: 夿ãã 1616 // 1617 // return: æå®æ¸å¼ã§å¤æããæ¥ä»æååãè¿ãã 1618 // 1619 // ä¾ï¼ "Y/m/d H:i:s" â "2008/10/10 18:00:00" 1620 // 1621 format: function(date, format) { 1622 if (typeof format != "string") return; 1623 1624 var d = date; 1625 if (date instanceof ExDateTime) d = date.get(); 1626 1627 var dYear = d.getFullYear(); 1628 var dMonth = d.getMonth() + 1; 1629 var dDate = d.getDate(); 1630 var dDay = d.getDay(); 1631 var dHours = d.getHours(); 1632 var dMinutes = d.getMinutes(); 1633 var dSeconds = d.getSeconds(); 1634 var dMsec = d.getMilliseconds(); 1635 var res = ""; 1636 1637 for(var i=0, len=format.length ; i<len ; i++) { 1638 var c = format.charAt(i); 1639 switch(c) { 1640 case "#": 1641 if (i == len - 1) break; 1642 res += format.charAt(++i); 1643 break; 1644 case "Y": res += dYear; break; 1645 case "y": res += dYear.toString().substr(2, 2); break; 1646 case "m": res += this.preZero(dMonth); break; 1647 case "n": res += dMonth; break; 1648 case "d": res += this.preZero(dDate); break; 1649 case "j": res += dDate; break; 1650 case "w": res += dDay; break; 1651 case "a": res += this.ampm(dHours); break; 1652 case "A": res += this.ampm(dHours).toUpperCase(); break; 1653 case "H": res += this.preZero(dHours); break; 1654 case "h": res += this.preZero(this.from24to12(dHours)); break; 1655 case "G": res += dHours; break; 1656 case "g": res += this.from24to12(dHours); break; 1657 case "i": res += this.preZero(dMinutes); break; 1658 case "s": res += this.preZero(dSeconds); break; 1659 case "t": res += this.getLastDayOfMonth(d); break; 1660 case "L": res += this.isLeapYear(dYear); break; 1661 case "z": res += this.getDayOfYear(dYear, dMonth, dDate); break; 1662 case "f": res += this.preWZero(dMsec); break; 1663 default : res += c; break; 1664 } 1665 } 1666 return res; 1667 }, 1668 1669 // 1670 // åã¼ãå¦ç 1671 // int value : åã¼ãç·¨éããæ°å 1672 // return : åã¼ãç·¨éããæ°åæååãè¿ãã 1673 // 1674 preZero: function(value) { 1675 return (parseInt(value) < 10) ? "0" + value : value; 1676 }, 1677 1678 // 1679 // åã¼ãå¦ç 1680 // int value : åã¼ãç·¨éããæ°å 1681 // return : åã¼ãç·¨éããæ°åæååãè¿ãã 1682 // 1683 preWZero: function(value) { 1684 var intVal = parseInt(value) 1685 if (intVal < 10) { 1686 return "00" + value; 1687 } else if (intVal < 100) { 1688 return "0" + value; 1689 } else { 1690 return value; 1691 } 1692 }, 1693 1694 // 1695 // 24æéå¶ã®æéã12æéå¶ã«å¤æ 1696 // int hours : 夿ããæé 1697 // return : 12æéå¶ã«å¤æããæéæåå 1698 // 1699 from24to12: function(hours) { 1700 return (hours > 12) ? hours - 12 : hours; 1701 }, 1702 1703 // 1704 // ååï¼åå¾ç¥å·ã®åå¾ï¼am/pmï¼ 1705 // int hours : ç¥å·ãåå¾ããæé
1706 // return ååã®å ´åã¯amãåå¾ã®å ´åã¯pmãè¿ãã 1707 // 1708 ampm: function(hours) { 1709 return (hours < 12) ? "am" : "pm"; 1710 }, 1711 1712 // 1713 // æå®æã®æçµæ¥ãåå¾ 1714 // int(Date) year : å¹´ 1715 // int month: æï¼å¹´ã«Dateã¯ã©ã¹ãæå®ãããå ´åã¯ç¡è¦ãããï¼ 1716 // return æå®æã®æçµæ¥ãè¿ãã 1717 getLastDayOfMonth: function(year, month) { 1718 var yy = year; 1719 var mm = month; 1720 if (year instanceof Date) { 1721 yy = year.getFullYear(); 1722 mm = year.getMonth() + 1; 1723 } 1724 var tmp = new Date(yy, mm-1+1, 0); // -1+1ã¯ãJavaScript Dateã¯ã©ã¹ã§æã¯0ï½11ã®ããæå®æãã-1ããã 1725 // æçµæ¥ãåå¾ãããããç¿æ1æ¥ã®åæ¥ã¨ãããã+1ãããã 1726 return tmp.getDate(); 1727 }, 1728 1729 // 1730 // æå®å¹´ã®ãããå¹´æ¤è¨¼ 1731 // int year : å¹´ 1732 // return : ãããå¹´ã®å ´åã¯trueã以å¤ã®å ´åã¯falseãè¿ãã 1733 // 1734 isLeapYear: function(year) { 1735 var sum = this.getDayOfYear(year, 12, 31); 1736 return (sum == 365) ? false : true; 1737 }, 1738 1739 // 1740 // æå®æ¥ã®çµéæ¥æ°ãåå¾ 1741 // int year : å¹´ 1742 // int month : æ 1743 // int day : æ¥ 1744 // return : æå®æ¥ã®åå¹´1æ1æ¥ããæå®æ¥ã¾ã§ã®çµéæ¥æ°ãè¿ãã 1745 // 1746 getDayOfYear: function(year, month, day) { 1747 var sum = 0; 1748 for(var mm=1 ; mm<month ; mm++) { 1749 sum += this.getLastDayOfMonth(year, mm); 1750 } 1751 return sum + day; 1752 } 1753}; 1754 1755function trim(str) { 1756 if (str == null) return null; 1757 return str.replace(/(^\s*)|(\s*$)/g, ""); 1758} 1759 1760/*********************************************************************************************************************************************/ 1761/** æ¥ä»è£å®: Form 1762/*********************************************************************************************************************************************/ 1763 1764// æ¥ä»ï¼YYYYMMDDå½¢å¼ 1765function setFormatDate(obj) { 1766 if (obj.value == null || obj.value == "") { 1767 return; 1768 } 1769 1770 try { 1771 obj.value = toDate(obj.value, true); 1772 } catch (e) { 1773 if (e instanceof ExDateTimeException) { 1774 Validator.output(obj, e.message); 1775 } else { 1776 throw e; 1777 } 1778 } 1779} 1780 1781function toDate(value, throwException) { 1782 if (value == null || value == "") { 1783 return; 1784 } 1785 1786 try { 1787 value = Validator.tohalf(value); 1788 var date = new ExDateTime().parseDate(value, false); 1789 return ExDateTimeUtils.format(date, "Y/m/d"); 1790 } catch(e) { 1791 if (throwException) { 1792 throw e; 1793 } else { 1794 return value; 1795 } 1796 } 1797} 1798 1799// æ¥ä»ï¼YYMMå½¢å¼ 1800function setFormatDateYYMM(obj) { 1801 if (obj.value == null || obj.value == "") { 1802 return; 1803 } 1804 1805 try { 1806 obj.value = toDateYYMM(obj.value, true); 1807 } catch (e) { 1808 if (e instanceof ExDateTimeException) { 1809 Validator.output(obj, e.message); 1810 } else { 1811 throw e; 1812 } 1813 } 1814} 1815 1816function toDateYYMM(value, throwException) { 1817 if (value == null || value == "") { 1818 return; 1819 } 1820 1821 try { 1822 value = Validator.tohalf(value); 1823 var date = new ExDateTime().parseYM(value); 1824 return ExDateTimeUtils.format(date, "Y/m"); 1825 } catch(e) { 1826 if (throwException) { 1827 throw e; 1828 } else { 1829 return value; 1830 } 1831 } 1832} 1833 1834//æ¥æï¼ YYYYMMDD hhmiss 1835function setFormatDateTime(obj) { 1836// Validator.init(obj); 1837 if (obj.value == null || obj.value == "") { 1838 return; 1839 } 1840 1841 try { 1842 obj.value = toDateTime(obj.value, true); 1843 } catch (e) { 1844 if (e instanceof ExDateTimeException) { 1845 Validator.output(obj, e.message); 1846 } else { 1847 throw e; 1848 } 1849 } 1850} 1851 1852function toDateTime(value, throwException) { 1853 if (value == null || value == "") { 1854 return; 1855 } 1856 1857 try { 1858 value = Validator.tohalf(value); 1859 var date = new ExDateTime().parseDate(value, true); 1860 return ExDateTimeUtils.format(date, "Y/m/d H:i:s"); 1861 } catch(e) { 1862 if (throwException) { 1863 throw e; 1864 } else { 1865 return value; 1866 } 1867 } 1868} 1869 1870//æ¥æï¼ YYYYMMDD hhmi 1871function setFormatDateHourMinutes(obj) { 1872// Validator.init(obj); 1873 if (obj.value == null || obj.value == "") { 1874 return; 1875 } 1876 1877 try { 1878 obj.value = toDateHourMinutes(obj.value, true); 1879 } catch (e) { 1880 if (e instanceof ExDateTimeException) { 1881 Validator.output(obj, e.message); 1882 } else { 1883 throw e; 1884 } 1885 } 1886} 1887 1888function toDateHourMinutes(value, throwException) { 1889 if (value == null || value == "") { 1890 return; 1891 } 1892 1893 try {
1894 value = Validator.tohalf(value); 1895 var date = new ExDateTime().parseDateHourMinutes(value); 1896 return ExDateTimeUtils.format(date, "Y/m/d H:i"); 1897 } catch(e) { 1898 if (throwException) { 1899 throw e; 1900 } else { 1901 return value; 1902 } 1903 } 1904} 1905 1906//æ¥æï¼ YYYYMMDD hhmiss sss 1907function setFormatTimestamp(obj) { 1908// Validator.init(obj); 1909 if (obj.value == null || obj.value == "") { 1910 return; 1911 } 1912 1913 try { 1914 obj.value = toTimestamp(obj.value, true); 1915 } catch (e) { 1916 if (e instanceof ExDateTimeException) { 1917 Validator.output(obj, e.message); 1918 } else { 1919 throw e; 1920 } 1921 } 1922} 1923 1924function toTimestamp(value, throwException) { 1925 if (value == null || value == "") { 1926 return; 1927 } 1928 1929 try { 1930 value = Validator.tohalf(value); 1931 var date = new ExDateTime().parseTimestamp(value, true); 1932 return ExDateTimeUtils.format(date, "Y/m/d H:i:s f"); 1933 } catch(e) { 1934 if (throwException) { 1935 throw e; 1936 } else { 1937 return value; 1938 } 1939 } 1940} 1941 1942// æå»ï¼ hhmmå½¢å¼ 1943function setFormatTime(obj) { 1944// Validator.init(obj); 1945 if (obj.value == null || obj.value == "") { 1946 return; 1947 } 1948 1949 try { 1950 obj.value = toTime(obj.value, true); 1951 } catch (e) { 1952 if (e instanceof ExDateTimeException) { 1953 Validator.output(obj, e.message); 1954 } else { 1955 throw e; 1956 } 1957 } 1958} 1959 1960function toTime(value, throwException) { 1961 if (value == null || value == "") { 1962 return; 1963 } 1964 1965 try { 1966 value = Validator.tohalf(value); 1967 var date = new ExDateTime().parseTime(value); 1968 return ExDateTimeUtils.format(date, "H:i"); 1969 } catch(e) { 1970 if (throwException) { 1971 throw e; 1972 } else { 1973 return value; 1974 } 1975 } 1976} 1977 1978/*********************************************************************************************************************************************/ 1979/** æ°åã®è£å®: Form 1980/*********************************************************************************************************************************************/ 1981/** 1982 * æå®ãããå¤ããã©ã¼ããããã¦æå®ãããIDã®ã¨ã¬ã¡ã³ãã«è¨å®ãã¾ãã 1983 * @param id ã¨ã¬ã¡ã³ãã®ID 1984 * @param value æå®å¤ 1985 * @param n å°æ°ç¹ä»¥ä¸æ¡æ° 1986 * @param isSeparate ã«ã³ãåºåãããã 1987 * @param isOverwrite 䏿¸ãããã 1988 */ 1989function setFormatNumber(id, value, n, isSeparate, isOverwrite) { 1990 if (value == null || value == undefined || value == "") { 1991 return; 1992 } 1993 1994 var element = document.getElementById(id); 1995 if (isNullorUndefined(element)) { 1996 return; 1997 } 1998 1999 try { 2000 2001 if (element.value != undefined) { 2002 if (isOverwrite == false && element.value != "") { 2003 return; 2004 } 2005 var formatNumber = getFormatedNumberString(value, n, isSeparate); 2006 element.value = formatNumber; 2007 } else if (element.innerText != undefined) { 2008 if (isOverwrite == false && !isNullorUndefinedorEmpty(element.innerText)) { 2009 return; 2010 } 2011 if (isOverwrite == false && !isNullorUndefinedorEmpty(element.textContent)) { 2012 return; 2013 } 2014 var formatNumber = getFormatedNumberString(value, n, isSeparate); 2015 element.innerText = formatNumber; 2016 element.textContent = formatNumber; 2017 } 2018 } catch(e) { 2019 // ä½ãããªã 2020 } 2021} 2022 2023/** 2024 * æå®ãããå¤ããã©ã¼ããããããå¤ã«å¤æãã¦è¿å´ãã¾ãã 2025 * @param value æå®å¤ 2026 * @param n å°æ°ç¹ä»¥ä¸æ¡æ° 2027 * @param isSeparate ã«ã³ãåºåãããã 2028 * @returns ãã©ã¼ããããããæåå 2029 */ 2030function getFormatedNumberString(value, n, isSeparate) { 2031 var fmt; 2032 if (isSeparate) { 2033 fmt = "#,##0"; 2034 } else { 2035 fmt = "0"; 2036 } 2037 2038 if(n != null && n > 0) { 2039 fmt += "."; 2040 for(var i=0 ; i < n; i++) { 2041 fmt += "0"; 2042 } 2043 } 2044 2045 var numValue; 2046 try { 2047 var num = new ExNumber(value); 2048 numValue = num.toFormatString(fmt); 2049// if ((n != null && n > 0) || (isSeparate != null && isSeparate == true)) { 2050 return numValue; 2051// } 2052 // return ""; 2053 } catch(e) { 2054 throw e; 2055 } 2056 2057} 2058 2059/** 2060 * æååã®ä¸ããç¹å®ã®æåãåé¤ããæååãè¿å´ãã¾ãã 2061 * 2062 * @param value æåå 2063 * @param targets åé¤ãããæååã®é å 2064 */ 2065function removeCharacters(value, targets) { 2066 if (isNullorUndefinedorEmpty(value) || isNullorUndefinedorEmpty(targets)) { 2067 return value; 2068 } 2069 2070 if (typeof(value) != 'string') { 2071 return value; 2072 } 2073 2074 if (Object.prototype.toString.call(targets) !== '[object Array]') { 2075 return value; 2076 } 2077 2078 for (key in targets) { 2079 value = value.replace(new RegExp(targets[key], "g"), ""); 2080 } 2081 return value; 2082} 2083 2084/*********************************************************************************************************************************************/ 2085/** Parts: SubWindowé¢é£ 2086/*********************************************************************************************************************************************/ 2087/** 2088 * ã¢ã¼ãã«ã§åç»é¢è¡¨ç¤º 2089 * 2090 * showModalDialogã§åç»é¢ãéãã¨åç»é¢å ã§submitä¸å¯ã®ããsubWindow.htmlããã¬ã¼ã ã¨ãã¦ä½¿ç¨ãã
2091 * @url : é·ç§»å URL 2092 * @titleString : åç»é¢ã¿ã¤ãã« 2093 * @s_width : åç»é¢å¹ 2094 * @s_height : åç»é¢é«ã 2095 * @return : åç»é¢ããã®ãªã¿ã¼ã³å¤ 2096 * 2097 */ 2098function showSubModalWindow(url, titleString, s_width, s_height) { 2099 if (url == null || url == '') return ''; 2100 2101 if (s_width == null) s_width = '1024'; 2102 if (s_height == null) s_height = '768'; 2103 2104 var arr = new Array(); 2105 arr[0] = url; 2106 arr[1] = titleString; 2107 arr[2] = this; 2108 2109 var retVal; 2110 if (window.showModalDialog) { 2111 retVal = window.showModalDialog('contents/parts/calendar/subWindow.html', arr, 'status:no;scroll:no;help:no;dialogWidth:' + s_width + 'px;dialogHeight:' + s_height + 'px'); 2112 } 2113 2114 if (typeof retVal == 'undefined') retVal=''; 2115 if (typeof retVal == null) retVal=''; 2116 2117 return retVal; 2118} 2119 2120/* 2121 * ã«ã¬ã³ãã¼ã®ã¢ã¼ãã«Windowã®è¡¨ç¤º 2122 * fromDate : éå§æ¥æé ç® 2123 * toDate : çµäºæ¥æé ç®ï¼nullãæå®ããå ´åã¯FROMã®ã¿ã®å ¥åï¼ 2124 * setType : æéå ¥åããã®å ´åã¯trueãç¡ãã®å ´åã¯false 2125 */ 2126function openCalendar(contextRoot, fromDate, toDate, setType) { 2127 var url = ""; 2128 if (contextRoot != null && contextRoot != undefined && contextRoot != "") { 2129 url = contextRoot; 2130 } 2131 2132 url += "contents/parts/calendar/calendar.html?"; 2133 url += "start_date=" + fromDate.value; 2134 url += "&start_date_field=" + fromDate.name; 2135 2136 var width; 2137 if (toDate == null) { 2138 url += "&end_date="; 2139 url += "&end_date_field="; 2140 width = 410; 2141 } 2142 else { 2143 url += "&end_date=" + toDate.value; 2144 url += "&end_date_field=" + toDate.name; 2145 width = 560; 2146 } 2147 if (setType) { 2148 url += "&time_selector=true"; 2149 } 2150 else { 2151 url += "&time_selector=false"; 2152 } 2153 url += "&seq=" + new Date().getTime(); 2154 2155 var height = '390'; 2156 2157 2158 var arr = new Array(); 2159 arr[0] = url; 2160 arr[1] = 'æ¥ä»é¸æ'; 2161 arr[2] = this; 2162 2163 var retVal; 2164 if (window.showModalDialog) { 2165 retVal = showModalDialog(url, window, 'status:no;scroll:no;help:no;dialogWidth:' + width + 'px;dialogHeight:' + height + 'px'); 2166 } 2167 2168 return false; 2169} 2170 2171/*********************************************************************************************************************************************/ 2172/** å ±éï¼ãã®ä»ã¦ã¼ãã£ãªã㣠2173/*********************************************************************************************************************************************/ 2174function isArray(obj) { 2175 return !( 2176 !obj || 2177 (!obj.length || obj.length == 0) || 2178 typeof obj != 'object' || 2179 !obj.constructor || 2180 obj.nodeType || 2181 obj.item 2182 ); 2183} 2184 2185/** 2186 * æå®ãªãã¸ã§ã¯ãã®ãã¼ã¸å 座æ¨ã®åå¾ 2187 * @obj : 座æ¨ãåå¾ãããªãã¸ã§ã¯ã 2188 */ 2189function getPagePosition(obj) { 2190 var pos = new Object(); 2191 pos.x = obj.offsetLeft; 2192 pos.y = obj.offsetTop; 2193 2194 var parent = obj.parentNode; 2195 while(parent != null) { 2196 // TABLEé¢é£ã®ã¿ã°ã®Offset座æ¨ããªãã¸ã§ã¯ãã®Offset座æ¨ã«å ç®ãã 2197 if (parent.tagName == "TABLE" || parent.tagName == "TD" || parent.tagName == "TH") { 2198 pos.x += parent.offsetLeft; 2199 pos.y += parent.offsetTop; 2200 } 2201 parent = parent.parentNode; 2202 } 2203 return pos; 2204} 2205 2206function isEmpty(str) { 2207 if (str == null || trim(str) == "" || isUndefined(str)) return true; 2208 return false; 2209} 2210 2211function createElement(tag, id, name) { 2212 var str; 2213 var element = document.createElement(tag); 2214 if (!isEmpty(id)) { 2215 element.setAttribute("id", id); 2216 } 2217 if (!isEmpty(name)) { 2218 element.setAttribute("name", name); 2219 } 2220 return element; 2221} 2222 2223function isUndefined(obj) { 2224 return obj === undefined; 2225} 2226 2227function isDefined(obj) { 2228 return !isUndefined(obj); 2229} 2230 2231/** 2232 * 対象ãªãã¸ã§ã¯ããNullã undefined ãå¤å®ããNullã undefinedã§ããå ´åtrueãè¿å´ãã¾ãã 2233 * @param obj ãªãã¸ã§ã¯ã 2234 * @returns 対象ãªãã¸ã§ã¯ããNullã undefinedã§ããå ´åtrue 2235 */ 2236function isNullorUndefined(obj) { 2237 return isUndefined(obj) || obj === null; 2238} 2239 2240/** 2241 * 対象ãªãã¸ã§ã¯ããNullã undefinedã 空æåãå¤å®ããNullã undefinedã 空æåã§ããå ´åtrueãè¿å´ãã¾ãã 2242 * @param obj ãªãã¸ã§ã¯ã 2243 * @returns 対象ãªãã¸ã§ã¯ããNullã undefinedã 空æåã§ããå ´åtrue 2244 */ 2245function isNullorUndefinedorEmpty(obj) { 2246 return isNullorUndefined(obj) || obj === ""; 2247} 2248 2249/******************************************************************************************************************************/ 2250/** Keybord Eventã¯ã©ã¹ 2251/******************************************************************************************************************************/ 2252var Keybord = { 2253 initialize: function() { 2254 setEventFunction(document, "onkeydown", this.onkeydown); 2255 setEventFunction(document, "onkeyup", this.onkeyup); 2256 }, 2257 2258 onkeydown: function(e) { 2259 // Mozilla(Firefox, NN) and Opera 2260 if (e != null) { 2261 Keybord.keycode = e.which; 2262 Keybord.ctrl = isUndefined(e.modifiers) ? e.ctrlKey : e.modifiers & Event.CONTROL_MASK; 2263 Keybord.shift = isUndefined(e.modifiers) ? e.shiftKey : e.modifiers & Event.SHIFT_MASK; 2264 } else { 2265 Keybord.keycode = event.keyCode; 2266 Keybord.ctrl = event.ctrlKey; 2267 Keybord.shift = event.shiftKey; 2268 } 2269 }, 2270 2271 onkeyup: function(e) { 2272 Keybord.ctrl = false;
2273 Keybord.shift = false; 2274 } 2275} 2276 2277/******************************************************************************************************************************/ 2278/** ã¯ãªãã¯ã¤ãã³ãçºç颿° 2279/******************************************************************************************************************************/ 2280function fireClick(id) { 2281 var obj = document.getElementById(id); 2282 if (obj.fireEvent) { 2283 obj.fireEvent("onclick"); 2284 } 2285 else if (obj.dispatchEvent) { 2286 var evt = document.createEvent("MouseEvents"); // ãã¦ã¹ã¤ãã³ãã使 2287 evt.initMouseEvent("click", true, true, window, 1, 1, 1, 1, 1, false, false, false, false, 0, obj); // ã¤ãã³ãã®è©³ç´°ãè¨å® 2288 obj.dispatchEvent(evt); 2289 } 2290} 2291 2292///** 2293// * å ¥åãã§ã㯠2294// */ 2295//function formCheckAll(form) { 2296// if (form == null || form == undefined) { 2297// return false; 2298// } 2299// 2300// var isError = false; 2301// for (var i = 0 ;i < form.elements.length; i++) { 2302// obj = form.elements[i]; 2303// var type = obj.type;
2304// var className = obj.className; 2305// var value = obj.value; 2306// 2307// if (type == 'text' || type == 'password') { 2308// if (className.indexOf("REQUIRED_INPUT") >= 0) { 2309// Validator.init(obj); 2310// var checked = Validator.check(obj, "input"); 2311// if (!checked) { 2312// isError = true; 2313// continue; 2314// } 2315// } 2316// 2317// } else if (type == 'textarea') { 2318// if (className.indexOf("REQUIRED_TEXT_AREA") >= 0) { 2319// Validator.init(obj); 2320// var checked = Validator.check(obj, "input"); 2321// if (!checked) { 2322// isError = true; 2323// continue; 2324// } 2325// } 2326// } else if (type == 'select-one') { 2327// if (className.indexOf("REQUIRED_COMBO") >= 0) { 2328// Validator.init(obj); 2329// var checked = Validator.check(obj, "input"); 2330// if (!checked) { 2331// isError = true; 2332// continue; 2333// } 2334// } 2335// } else if (type == 'select-multiple') { 2336// if (className.indexOf("REQUIRED_SELECTLIST") >= 0) { 2337// Validator.init(obj); 2338// var checked = Validator.check(obj, "input"); 2339// if (!checked) { 2340// isError = true; 2341// continue; 2342// } 2343// } 2344// } 2345// if (value != null && value != undefined && value != "") { 2346// if (type == 'text' || type == 'password') { 2347// if (className.indexOf("MAIL_ADDRESS") >= 0) { 2348// Validator.init(obj); 2349// var checked = Validator.check(obj, "mail"); 2350// if (!checked) { 2351// isError = true; 2352// } 2353// } else if (className.indexOf("HALF_ENGLISH_NUMBER") >= 0) { 2354// Validator.init(obj); 2355// var checked = Validator.check(obj, "alphabetNumber"); 2356// if (!checked) { 2357// isError = true; 2358// } 2359// } else if (className.indexOf("HALF_ENGLISH") >= 0) { 2360// Validator.init(obj); 2361// var checked = Validator.check(obj, "alphabet"); 2362// if (!checked) { 2363// isError = true; 2364// } 2365// } else if (className.indexOf("FULL_PITCH_CHAR_KANA") >= 0) { 2366// Validator.init(obj); 2367// var checked = Validator.check(obj, "kana"); 2368// if (!checked) { 2369// isError = true; 2370// } 2371// } else if (className.indexOf("FULL_PITCH_CHAR") >= 0) { 2372// Validator.init(obj); 2373// var checked = Validator.check(obj, "zenkaku"); 2374// if (!checked) { 2375// isError = true; 2376// } 2377// } else if (className.indexOf("NUMBER") >= 0) { 2378// Validator.init(obj); 2379// var checked = Validator.check(obj, "num"); 2380// if (!checked) { 2381// isError = true; 2382// } 2383// } else if (className.indexOf("DATE_YYMM") >= 0) { 2384// // YYYY/MM 2385// Validator.init(obj); 2386// try { 2387// var date = new ExDateTime().parseYM(value); 2388// } catch (e) { 2389// isError = true; 2390// Validator.output(obj, e.message); 2391// } 2392// } else if (className.indexOf("DATE_TIME") >= 0 || obj.className.indexOf("TIMESTAMP") >= 0) { 2393// // YYYY/MM/DD hh:mi:ss 2394// Validator.init(obj); 2395// try { 2396// var date = new ExDateTime().parseDate(value, true); 2397// } catch (e) { 2398// isError = true; 2399// Validator.output(obj, e.message); 2400// } 2401// } else if (className.indexOf("DATE") >= 0) { 2402// // YYYY/MM/DD 2403// Validator.init(obj); 2404// try { 2405// var date = new ExDateTime().parseDate(value, false); 2406// } catch (e) { 2407// isError = true; 2408// Validator.output(obj, e.message); 2409// } 2410// } else if (className.indexOf("TIME") >= 0) { 2411// Validator.init(obj); 2412// // hh:mi 2413// try { 2414// var date = new ExDateTime().parseTime(value); 2415// } catch (e) { 2416// isError = true; 2417// Validator.output(obj, e.message); 2418// } 2419// } 2420// } 2421// } 2422// } 2423// return isError; 2424//} 2425 2426/** 2427 * æ¨æºãªã¹ããå¶å¾¡ããã¯ã©ã¹ 2428 */ 2429var StandardList = function() { 2430 this.initialize.apply(this, arguments); 2431} 2432 2433StandardList.prototype = { 2434 /** 2435 * ãã¼ãã«ID 2436 */ 2437 tableId: null, 2438 2439 /** 2440 * 対象ãã¼ãã« 2441 */ 2442 tableElement: null, 2443 2444 /** 2445 * 鏿è¡ãªãã¸ã§ã¯ã 2446 */ 2447 selectedRow: null, 2448 2449 /** 2450 * ç§»åæã®è¡ã®ã¹ã¿ã¤ã« 2451 */ 2452 moveRowStyle: "MOUSE_OVER_DETAILS_ROW", 2453 2454 /** 2455 * 鏿ãããè¡ã®ã¹ã¿ã¤ã« 2456 */ 2457 selectRowStyle: "SELECT_DETAILS_ROW", 2458 2459 /** 2460 * åæå 2461 * @param tableId ãã¼ãã«ã®ID 2462 * @param table 対象ãã¼ãã« 2463 * @param selectedRowId åæé¸æè¡ 2464 */ 2465 initialize: function(tableId, table, selectedRowId) { 2466 this.tableId = tableId; 2467 this.tableElement = table; 2468 if (selectedRowId != null && selectedRowId != undefined) { 2469 this.selectRowById(selectedRowId); 2470 } 2471 }, 2472 2473 /** 2474 * è¡ãRowIDããæå®ãã¦é¸æãã¾ãã 2475 * @param id RowID 2476 */ 2477 selectRowById: function(id) { 2478 if (this.tableElement != null && this.tableElement != undefined && id != null && id != undefined) { 2479 var indexList = id.replace(this.tableId, "").split("_"); 2480 var rows; 2481 if (indexList.length > 2) { 2482 if (!isNullorUndefined(this.tableElement[indexList[1]])) { 2483 rows = this.tableElement[indexList[1]].rows; 2484 } 2485 } else { 2486 rows = this.tableElement[0].rows; 2487 } 2488 var row; 2489 if (!isNullorUndefined(rows)) { 2490 row = rows.namedItem(id); 2491 } else { 2492 row = document.getElementById(id); 2493 } 2494 if (!isNullorUndefined(row)) { 2495 this.selectRow(row); 2496 return true; 2497 } 2498 } 2499 return false;
2500 }, 2501 2502 /** 2503 * è¡ã®é¸æ 2504 * @param object 鏿ãããè¡ãªãã¸ã§ã¯ã 2505 */ 2506 selectRow: function(object) { 2507 var selectedRow = this.getSelectedRowInSameDetails(object); 2508 if (!isNullorUndefined(selectedRow)) { 2509 this.changeRowStyle(selectedRow, ""); 2510 } 2511 this.selectedRow = this.setSelectedRowInSameDetails(object); 2512 this.changeRowSelectColor(object); 2513 }, 2514 2515 /** 2516 * åæç´°ã®é¸æè¡ã®åå¾ 2517 * @param object 鏿ãããè¡ãªãã¸ã§ã¯ã 2518 */ 2519 getSelectedRowInSameDetails: function(object) { 2520 var indexList = object.id.replace(this.tableId, "").split("_"); 2521 var selectedRow; 2522 if (indexList.length > 2) { 2523 selectedRow = this.getSelectedRow(this.selectedRow, indexList, 1); 2524 } else { 2525 selectedRow = this.selectedRow; 2526 } 2527 return selectedRow; 2528 }, 2529 2530 /** 2531 * åæç´°ã®é¸æè¡ã®åå¾(å帰å¦çé¨) 2532 * @param object 鏿ãããè¡ãªãã¸ã§ã¯ã 2533 * @param indexList ã¤ã³ããã¯ã¹ãªã¹ã 2534 */ 2535 getSelectedRow: function(elements, indexList, index) { 2536 if (index == indexList.length - 1) { 2537 return elements; 2538 } else { 2539 if (!isNullorUndefined(elements)) { 2540 return this.getSelectedRow(elements[indexList[index]], indexList, index + 1); 2541 } 2542 } 2543 }, 2544 2545 /** 2546 * åæç´°ã®é¸æè¡ã®åå¾ 2547 * @param object 鏿ãããè¡ãªãã¸ã§ã¯ã 2548 */ 2549 setSelectedRowInSameDetails: function(object) { 2550 var indexList = object.id.replace(this.tableId, "").split("_"); 2551 if (indexList.length > 2) { 2552 return this.setSelectedRow(this.selectedRow, indexList, 1, object, ""); 2553 } else { 2554 return object; 2555 } 2556 }, 2557 2558 /** 2559 * åæç´°ã®é¸æè¡ã®åå¾(å帰å¦çé¨) 2560 * @param elements ç¾å¨é¸æè¡ãªãã¸ã§ã¯ãé å 2561 * @param indexList ã¤ã³ããã¯ã¹ãªã¹ã 2562 * @param index ã¤ã³ããã¯ã¹ãªã¹ãã®ã¤ã³ããã¯ã¹ 2563 * @param object 鏿ãããè¡ãªãã¸ã§ã¯ã 2564 * @param indexSymbol ã¤ã³ããã¯ã¹ã·ã³ãã« 2565 */ 2566 setSelectedRow: function(elements, indexList, index, object, indexSymbol) { 2567 if (index == indexList.length - 1) { 2568 var indexElement = document.getElementById(this.tableId + "SelectedIndex" + indexSymbol); 2569 indexElement.value = indexList[index]; 2570 return object; 2571 } else { 2572 if (isNullorUndefined(elements)) { 2573 elements = new Array(); 2574 } 2575 indexSymbol = indexSymbol + "_" + indexList[index]; 2576 elements[indexList[index]] = this.setSelectedRow(elements[indexList[index]], indexList, index + 1, object, indexSymbol); 2577 return elements; 2578 } 2579 }, 2580 2581 /** 2582 * ã°ãªããã®è¡ãç§»åããéã«è²ãè¨å®ãã 2583 * @param object è¡ãªãã¸ã§ã¯ã 2584 */ 2585 setRowMoveColor: function(object) { 2586 if (!this.checkSelectedRow(object)) { 2587 this.changeRowStyle(object, this.moveRowStyle); 2588 } 2589 }, 2590 2591 /** 2592 * ã°ãªããã®è¡ãé¢ããéãè¡ã®è²ããã¨ã«æ»ã 2593 * @param object è¡ãªãã¸ã§ã¯ã 2594 */ 2595 resetRowMoveColor: function(object) { 2596 if (!this.checkSelectedRow(object)) { 2597 this.changeRowStyle(object, ""); 2598 } 2599 }, 2600 2601 /** 2602 * 対象è¡ã鏿ä¸ãããã§ãã¯ãã 2603 * @param object è¡ãªãã¸ã§ã¯ã 2604 */ 2605 checkSelectedRow: function(object) { 2606 var selectedRow = this.getSelectedRowInSameDetails(object); 2607 if (object == selectedRow) { 2608 return true; 2609 } else { 2610 return false; 2611 } 2612 }, 2613 2614 /** 2615 * 鏿ãããã°ãªããã®è¡ã®è²ã夿´ãã 2616 * @param object è¡ãªãã¸ã§ã¯ã 2617 */ 2618 changeRowSelectColor: function(object) { 2619 this.changeRowStyle(object, this.selectRowStyle); 2620 }, 2621 2622 /** 2623 * è¡ã®è²ã夿´ãã 2624 * @param object è¡ãªãã¸ã§ã¯ã 2625 * @param className è²(空ç½ã®æã¯å ã®è²(CSSãªã©ã
2625§å®ç¾©ããã¦ããè²)ã«æ»ã) 2626 */ 2627 changeRowStyle: function(object, changeStyle) { 2628 if (object == undefined) { 2629 return; 2630 } 2631 2632 if (object.cells == undefined) { 2633 return; 2634 } 2635 2636 for (var i = 0; i < object.cells.length; i++) { 2637 var cell = object.cells[i]; 2638 2639 this.changeCellStyle(cell, changeStyle); 2640 if (cell.hasChildNodes()) { 2641 for (var j = 0; j < cell.childNodes.length; j++) { 2642 var childNode = cell.childNodes[j]; 2643 if (childNode.nodeType == 1) { 2644 if (childNode.type == "text" || childNode.type == "password" || childNode.type == "select-one" || childNode.type == "select-multiple") { 2645 this.changeCellStyle(childNode, changeStyle); 2646 } 2647 } 2648 } 2649 } 2650 } 2651 }, 2652 2653 changeCellStyle: function(cell, changeStyle) { 2654 if (cell == null || cell == undefined) { 2655 return; 2656 } 2657 2658 var className = cell.className; 2659 if (changeStyle != "") { 2660 if (className.indexOf(this.moveRowStyle) >= 0 && changeStyle == this.selectRowStyle) { 2661 // 鏿æã¯ãç§»åã¹ã¿ã¤ã«ãã¯ãªã¢ 2662 className = className.replace(this.moveRowStyle, ""); 2663 } 2664 2665 if (className.indexOf(this.selectRowStyle) >= 0 && changeStyle == this.moveRowStyle) { 2666 // 鏿ã¹ã¿ã¤ã«ã¯ç§»åã¹ã¿ã¤ã«ã§ä¸æ¸ãããªã 2667 } else { 2668 if (className.indexOf(changeStyle) < 0) { 2669 className = className + " " + changeStyle; 2670 } 2671 } 2672 } else { 2673 // ã¯ãªã¢ 2674 if (className != null && className != undefined && className != "") { 2675 className = className.replace(this.selectRowStyle, ""); 2676 className = className.replace(this.moveRowStyle, ""); 2677 className = className.replace(" ", " "); 2678 } 2679 } 2680 2681 cell.className = className; 2682 }, 2683 2684 /** 2685 * ã»ã«ã®è²ã親ãã¼ãã¨åä¸ã®è²ã«ãã¾ãã 2686 */ 2687 cellColorToParentNodeColor: function(cell) { 2688 if (cell != null && cell != undefined && cell.parentNode) { 2689 cell.style.background = cell.parentNode.style.background; 2690 } 2691 } 2692} 2693 2694/** 2695 * æå®ãããURLã®ãµãã¦ã£ã³ãã¦ãã¤ã¢ãã°ã表示ãã¾ãã 2696 * @param url URL(encodeããã¾ã) 2697 * @param width ãã¤ã¢ãã°å¹ (px) 2698 * @param height ãã¤ã¢ãã°é«ã(px) 2699 * @param target Window Targetå 2700 */ 2701function openWindow(url, width, height, target) { 2702 return openModalWindow(url, width, height, target); 2703} 2704 2705/** 2706 * ãããã¢ãããã¤ã¢ãã°ãéãã¾ãã 2707 */ 2708function windowClose() { 2709 window.close(); 2710} 2711 2712/** 2713 * æå®ãããURLã®ãµãã¦ã£ã³ãã¦ãã¤ã¢ãã°ãã¢ã¼ãã¬ã¹ã§è¡¨ç¤ºãã¾ãã 2714 * @param url URL(encodeããã¾ã) 2715 * @param width ãã¤ã¢ãã°å¹ (px) 2716 * @param height ãã¤ã¢ãã°é«ã(px) 2717 * @param target Window Targetå 2718 */ 2719function openModelessWindow(url, width, height, target) { 2720 if (url == null || url == undefined) { 2721 return; 2722 } 2723 2724 width = width || 1024; 2725 height = height || 768; 2726 if (isNullorUndefined(target)) { 2727 target = "_blank"; 2728 } 2729 2730 var win = window.open(encodeURI(url), target, "width=" + width + ", height=" + height + ",scrollbars=yes,resizable=yes,status=no"); 2731 win.focus(); 2732 2733 return win; 2734} 2735 2736/** 2737 * æå®ãããURLã®ãµãã¦ã£ã³ãã¦ãã¤ã¢ãã°ãã¢ã¼ãã«ã§è¡¨ç¤ºãã¾ãã 2738 * @param url URL(encodeããã¾ã) 2739 * @param width ãã¤ã¢ãã°å¹ (px) 2740 * @param height ãã¤ã¢ãã°é«ã(px) 2741 * @param target Window Targetå 2742 */ 2743function openModalWindow(url, width, height, target) { 2744 if (url == null || url == undefined) { 2745 return; 2746 } 2747 width = width || 1024; 2748 height = height || 768; 2749 2750 var option = "status:no;resizable:yes;scroll:yes;help:no;dialogWidth:" + width + "px;dialogHeight:" + height + "px"; 2751 return showModalDialog(encodeURI(url), window, option); 2752} 2753 2754/** 2755 * GETãã©ã¡ã¼ã¿(æåå)ãåå¾ãã¾ãã[?以éãåå¾ãã¾ãã] 2756 * @returns GETãã©ã¡ã¼ã¿ã®é£æ³é å 2757 */ 2758function getGetParameterString() { 2759 if(location.search.length > 1) { 2760 return location.search.substr(1); 2761 } else { 2762 return ""; 2763 } 2764} 2765 2766/** 2767 * GETãã©ã¡ã¼ã¿ãåå¾ãã¾ãã 2768 * @returns GETãã©ã¡ã¼ã¿ã®é£æ³é å 2769 */ 2770function getGetParameter() { 2771 var getParameter = getGetParameterString(); 2772 if(!isNullorUndefinedorEmpty(getParameter)) { 2773 var get = new Object(); 2774 var ret = getParameter.split("&"); 2775 for(var i = 0; i < ret.length; i++) { 2776 var r = ret[i].split("="); 2777 get[r[0]] = r[1]; 2778 } 2779 return get; 2780 } else { 2781 return new Object(); 2782 } 2783} 2784 2785/** 2786 * 親ã®ãã£ã¼ã«ãã®æå®ãããã£ã¼ã«ãã«æå®ããå¤ãè¨å®ãã¾ãã<br> 2787 * ãã®éãæå®ãããã°ã親ã®ãã£ã¼ã«ãã«ãã©ã¼ã«ã¹ãç§»åãã¾ãã 2788 * @param parentId 親ã®ãã£ã¼ã«ãID 2789 * @param value è¨å®ããå¤ 2790 * @param overwrite 䏿¸ãããã 2791 * @return è¨å®ããããå ´åtrue 2792 */ 2793function setValueToParentWindowItem(parentId, value, overwrite) { 2794 var openerDocument = getOpenerDocument(); 2795 if (openerDocument == null || openerDocument == undefined) { 2796 return false;
2797 } 2798 2799 var parentItem = openerDocument.getElementById(parentId); 2800 if (parentItem != null && parentItem != undefined) { 2801 if (parentItem.value != undefined) { 2802 if (overwrite || (!overwrite && parentItem.value == "")) { 2803 parentItem.value = value; 2804 } 2805 } else if (parentItem.innerText != undefined) { 2806 if (overwrite || (!overwrite && parentItem.innerText == "")) { 2807 parentItem.innerText = value; 2808 } 2809 } else if (parentItem.textContent != undefined) { 2810 if (overwrite || (!overwrite && parentItem.textContent == "")) { 2811 parentItem.textContent = value; 2812 } 2813 } 2814 return true; 2815 } else { 2816 // radioã®å¯è½æ§ 2817 var elements = openerDocument.getElementsByName(parentId); 2818 if (!isNullorUndefined(elements) && elements.length > 0) { 2819 if (elements[0].type == "radio") { 2820 checkRadioElement(elements, value); 2821 return true; 2822 } 2823 } 2824 return false; 2825 } 2826} 2827 2828/** 2829 * 親ã®ãã£ã¼ã«ãã®æå®ãããã£ã¼ã«ãã«ãã©ã¼ã«ã¹ãç§»åãã¾ãã 2830 * @param parentId 親ã®ãã£ã¼ã«ãID 2831 */ 2832function setFocusToParentWindowItem(parentId) { 2833 var parentItem = getParentItem(parentId); 2834 if (!isNullorUndefined(parentItem)) { 2835 parentItem.focus(); 2836 } 2837} 2838 2839/** 2840 * 親ã®ãã£ã¼ã«ãã®ã¢ã¤ãã ãåå¾ãã¾ãã 2841 * @param parentId 親ã®ãã£ã¼ã«ãID 2842 * @returns 親ã®ãã£ã¼ã«ãã®ã¢ã¤ãã 2843 */ 2844function getParentItem(parentId) { 2845 var openerDocument = getOpenerDocument(); 2846 if (isNullorUndefined(openerDocument)) { 2847 return null; 2848 } 2849 var parentItem = openerDocument.getElementById(parentId); 2850 return parentItem; 2851} 2852 2853/** 2854 * 親Windowã®Documentãªãã¸ã§ã¯ããåå¾ãã¾ãã 2855 * @returns 親Windowã®Documentãªãã¸ã§ã¯ã 2856 */ 2857function getOpenerDocument() { 2858 if(window.dialogArguments) { 2859 opener = window.dialogArguments; 2860 } else if(window.opener){ 2861 // FireFoxå¯¾å¿ 2862 opener = window.opener; 2863 } else if(window.parent.opener){ 2864 // FireFoxå¯¾å¿ 2865 opener = window.parent.opener; 2866 } 2867 2868 if (opener == null) { 2869 return null; 2870 } 2871 var openerDocument = opener.document; 2872 return openerDocument; 2873} 2874 2875/** 2876 * æå®ããããã©ã¼ã ã¢ã¤ãã ã«å¯¾ããã¯ã©ã¹åã®è¨å®ãè¡ãã¾ãã 2877 * @param id ãã©ã¼ã ID 2878 * @param className æå®ã¯ã©ã¹å 2879 */ 2880function changeClassName(id, className) { 2881 var element = document.getElementById(id); 2882 if (element != null && element != undefined && element.className != undefined) { 2883 element.className = className; 2884 } 2885} 2886 2887/** 2888 * æå®ããããã©ã¼ã ã¢ã¤ãã ã®ã¯ã©ã¹åãã¯ãªã¢ãã¾ãã 2889 * @param id ãã©ã¼ã ID 2890 */ 2891function clearClassName(id) { 2892 changeClassName(id, ""); 2893} 2894 2895/** 2896 * ã¨ã¬ã¡ã³ãã®å¤ã®ã³ãã¼ãè¡ãã¾ãã 2897 * @param from ã³ãã¼å 2898 * @param to ã³ãã¼å 2899 * @param isOverwrite 䏿¸ãããã 2900 */ 2901function copyValueElements(from, to, isOverwrite) { 2902 var fromElement = document.getElementById(from); 2903 var toElement = document.getElementById(to); 2904 if (fromElement != null && fromElement != undefined && toElement != null && toElement != undefined) { 2905 if (isOverwrite) { 2906 toElement.value = fromElement.value; 2907 } else { 2908 if (toElement.value == null || toElement.value == "") { 2909 toElement.value = fromElement.value; 2910 } 2911 } 2912 } 2913} 2914 2915/** 2916 * æå®ãããIDã®ã³ã³ãããã¯ã¹ãæå®ãããå¤ã®é¸æå¤ã«åãæ¿ãã¾ãã 2917 * @param id ã³ã³ãããã¯ã¹ID 2918 * @param value æå®å¤ 2919 */ 2920function selectCombobox(id, value) { 2921 var element = document.getElementById(id); 2922 var isSelect = false; 2923 if (element != null && element != undefined && element.options != undefined) { 2924 for (var i = 0; i < element.options.length; i++) { 2925 if (value == element.options[i].value) { 2926 element.selectedIndex = i; 2927 isSelect = true; 2928 } 2929 } 2930 if (!isSelect) { 2931 element.selectedIndex = -1; 2932 } 2933 } 2934} 2935 2936/** 2937 * 対象ã¨ã¬ã¡ã³ãã®å¤ã空ã§ãªããã¨ã確èªãã¾ãã 2938 * @param element ã¨ã¬ã¡ã³ã 2939 * @returns 空ã®å ´åtrue 2940 */ 2941function isElementValueEmpty(element) { 2942 if (element != null && element != undefined && element.value != null && 2943 element.value != undefined && element.value != "") { 2944 return false;
2945 } else { 2946 return true; 2947 } 2948} 2949 2950/** 2951 * 対象ãªãã¸ã§ã¯ãã«ç´ã¥ãåãã¼ããå ¨ã¦åé¤ãã¾ãã 2952 * ã³ã³ãããã¯ã¹ã®ãªãã·ã§ã³ãã¯ãªã¢ããå ´åãªã©ã«å©ç¨ãã¾ãã 2953 * @param x 対象ãªãã¸ã§ã¯ã 2954 */ 2955function removeChildren(x) { 2956 if (isNullorUndefined(x)) { 2957 return; 2958 } 2959 if (x.hasChildNodes()) { 2960 while (x.childNodes.length > 0) { 2961 x.removeChild(x.firstChild) 2962 } 2963 } 2964} 2965 2966/** 2967 * ã¨ã¬ã¡ã³ãã®IDãæå®ããæå®ãããIDã®ã¨ã¬ã¡ã³ãæ°å¤ãå ç®ãã¦è¿å´ãã¾ãã 2968 * @param å ç®ãããã¨ã¬ã¡ã³ãã®ID(è¤æ°æå®å¯è½) 2969 * @returns å ç®ãããçµæ 2970 */ 2971function plusForElements() { 2972 var total = 0; 2973 var isAllNaN = true; 2974 for (var i = 0; i < arguments.length; i++) { 2975 var id = arguments[i]; 2976 var number = getElementValueNumber(id); 2977 if (!isNaN(number)) { 2978 isAllNaN = false; 2979 total += number; 2980 } 2981 } 2982 2983 if (isAllNaN) { 2984 return Number.NaN; 2985 } else { 2986 return total; 2987 } 2988} 2989 2990/** 2991 * ã¨ã¬ã¡ã³ãã®IDãæå®ããæå®ãããIDã®ã¨ã¬ã¡ã³ãæ°å¤ãæ¸ç®ãã¦è¿å´ãã¾ãã 2992 * 第ä¸å¼æ°ããã第äºå¼æ°ä»¥éã®å¤ãæ¸ç®ãã¾ãã 2993 * @param æ¸ç®ãããã¨ã¬ã¡ã³ãã®ID(è¤æ°æå®å¯è½) 2994 * @returns æ¸ç®ãããçµæ 2995 */ 2996function subtractForElements() { 2997 var total = 0; 2998 var isAllNaN = true; 2999 for (var i = 0; i < arguments.length; i++) { 3000 var id = arguments[i]; 3001 var number = getElementValueNumber(id); 3002 if (!isNaN(number)) { 3003 if (i == 0) { 3004 total = number; 3005 } else { 3006 total -= number; 3007 } 3008 isAllNaN = false; 3009 } 3010 } 3011 3012 if (isAllNaN) { 3013 return Number.NaN; 3014 } else { 3015 return total; 3016 } 3017} 3018 3019/** 3020 * ã¨ã¬ã¡ã³ãã®IDãæå®ããæå®ãããIDã®ã¨ã¬ã¡ã³ãæ°å¤ãä¹ç®ãã¦è¿å´ãã¾ãã 3021 * @param ä¹ç®ãããã¨ã¬ã¡ã³ãã®ID(è¤æ°æå®å¯è½) 3022 * @returns ä¹ç®ãããçµæ 3023 */ 3024function multiplyForElements() { 3025 var total = 0; 3026 for (var i = 0; i < arguments.length; i++) { 3027 var id = arguments[i]; 3028 var number = getElementValueNumber(id); 3029 if (isNaN(number)) { 3030 return Number.NaN; 3031 } 3032 3033 if (number == 0) { 3034 // 0ã¯ä½åããã¦ã0 3035 return 0; 3036 } 3037 3038 if (total == 0) { 3039 total = number; 3040 } else { 3041 total *= number; 3042 } 3043 } 3044 return total; 3045} 3046 3047/** 3048 * ã¨ã¬ã¡ã³ãã®IDãæå®ããæå®ãããIDã®ã¨ã¬ã¡ã³ãæ°å¤ãé¤ç®ãã¦è¿å´ãã¾ãã 3049 * 第ä¸å¼æ°ããã第äºå¼æ°ä»¥éã®å¤ãé¤ç®ãã¾ãã 3050 * @param é¤ç®ãããã¨ã¬ã¡ã³ãã®ID(è¤æ°æå®å¯è½) 3051 * @returns é¤ç®ãããçµæ 3052 */ 3053function divideForElements() { 3054 var total = 0; 3055 for (var i = 0; i < arguments.length; i++) { 3056 var id = arguments[i]; 3057 var number = getElementValueNumber(id); 3058 if (isNaN(number)) { 3059 return Number.NaN; 3060 } 3061 3062 if (i == 0) { 3063 total = number; 3064 if (number == 0) { 3065 // 0ã¯ä½åå²ã£ã¦ã0 3066 return 0; 3067 } 3068 } else { 3069 if (number == 0) { 3070 // 0å²ãä¸å¯ 3071 return Number.NaN; 3072 } 3073 total /= number; 3074 } 3075 } 3076 return total; 3077} 3078 3079 3080/** 3081 * ã¨ã¬ã¡ã³ãã®IDãæå®ããæ°å¤ãåå¾ãã¾ãã 3082 * ã¨ã¬ã¡ã³ãã®å¤ãæ°å¤ã§ãªãå ´åãNumber.NaNãè¿å´ãã¾ãã 3083 * @param id ã¨ã¬ã¡ã³ãã®ID 3084 * @returns ã¨ã¬ã¡ã³ãã®æ°å¤(or Number.NaN) 3085 */ 3086function getElementValueNumber(id) { 3087 var idObjStr = getElementValue(id); 3088 return toNumber(idObjStr); 3089} 3090 3091/** 3092 * æååãæ°å¤ã«å¤æãã¦è¿å´ãã¾ãã 3093 * @param str æåå 3094 * @returns å¯¾è±¡ãæ°å¤å¤æããå¤(夿ã§ããªãã£ãå ´åNaN) 3095 */ 3096function toNumber(str) { 3097 if (!isNullorUndefinedorEmpty(str)) { 3098 var idNumber = new Number(removeCanma(str)); 3099 if(!isNaN(idNumber)) { 3100 return idNumber; 3101 } 3102 } 3103 return Number.NaN; 3104} 3105 3106/** 3107 * ã¨ã¬ã¡ã³ãã®IDãæå®ããå¤ãæååã§åå¾ãã¾ãã 3108 * @param id ã¨ã¬ã¡ã³ãã®ID 3109 * @returns ã¨ã¬ã¡ã³ãã®æåå 3110 */ 3111function getElementValue(id) { 3112 var obj = document.getElementById(id); 3113 if (!isNullorUndefined(obj)) { 3114 if (obj.type == "checkbox") { 3115 if (obj.checked) { 3116 return "1"; 3117 } else { 3118 return "0"; 3119 } 3120 } 3121 return getValueFromElement(obj); 3122 } else { 3123 // radioã¾ãã¯checkboxesã®å¯è½æ§ 3124 var elements = document.getElementsByName(id); 3125 if (!isNullorUndefined(elements) && elements.length > 0) { 3126 if (elements[0].type == "radio") { 3127 for(var i=0; i<elements.length; i++){ 3128 if (elements[i].checked) { 3129 return elements[i].value; 3130 } 3131 } 3132 } else if (elements[0].type == "checkbox") { 3133 var arr = []; 3134 for (var i = 0; i < elements.length; i++){ 3135 if(elements[i].checked) 3136 arr.push(elements[i].value); 3137 } 3138 return arr.join(','); 3139 } 3140 } 3141 3142 // disabledã®å¯è½æ§ 3143 var obj = document.getElementById(id + "_disabled_hidden"); 3144 if (!isNullorUndefined(obj)) { 3145 return getValueFromElement(obj); 3146 } 3147 3148 // linkã®å¯è½æ§ 3149 var obj = document.getElementById(id + "_link"); 3150 if (!isNullorUndefined(obj)) { 3151 return getValueFromElement(obj); 3152 } 3153 } 3154} 3155 3156/** 3157 * ã¨ã¬ã¡ã³ãããå¤ãæååã§åå¾ãã¾ãã 3158 * @param element ã¨ã¬ã¡ã³ã 3159 * @returns ã¨ã¬ã¡ã³ãã®æåå 3160 */ 3161function getValueFromElement(element) { 3162 if (isNullorUndefined(element)) { 3163 return ""; 3164 } 3165 3166 if (!isNullorUndefined(element.value)) { 3167 return element.value; 3168 } else if (!isNullorUndefined(element.innerText)) { 3169 return element.innerText; 3170 } else if (!isNullorUndefined(element.textContent)) { 3171 return element.textContent; 3172 } else { 3173 return ""; 3174 } 3175} 3176 3177/** 3178 * valueã¨åä¸ã®ã¨ã¬ã¡ã³ãã«ãã§ãã¯ãã¤ãã¾ãã 3179 * @param elements radioã®ã¨ã¬ã¡ã³ãé å 3180 * @param value ãã§ãã¯ããå¤ 3181 */ 3182function checkRadioElement(elements, value) { 3183 if (isNullorUndefined(elements)) { 3184 return; 3185 } 3186 3187 for (var i = 0; i < elements.length; i++) { 3188 var radioElement = elements[i]; 3189 if (radioElement.value == value) { 3190 radioElement.checked = true; 3191 break; 3192 } 3193 } 3194} 3195 3196/** 3197 * æå®ããã¨ã¬ã¡ã³ãã®innerTextãæ¸ãæãã¾ãã(label/textarea/pre/span/div etc.) 3198 * @param id ã¨ã¬ã¡ã³ãã®ID 3199 * @param value è¨å®ããå¤ 3200 * @param isOverwrite 䏿¸ãããã 3201 */ 3202function setInnerText(id, value, isOverwrite) { 3203 var element = document.getElementById(id); 3204 if (element != null && element != undefined) { 3205 if (isNullorUndefined(value)) { 3206 value = ""; 3207 } 3208 if (element.type == 'textarea') { 3209 if (isOverwrite) { 3210 element.value = value; 3211 } else { 3212 if (element.value == null || element.value == "") { 3213 element.value = value; 3214 } 3215 } 3216 } else { 3217 if (isOverwrite) { 3218 element.innerText = value; 3219 element.textContent = value; 3220 } else { 3221 if (isNullorUndefined(element.innerText)) { 3222 element.innerText = value; 3223 } else if (isNullorUndefined(element.textContent)) { 3224 // FireFox 3225 element.textContent = value; 3226 } 3227 } 3228 3229 } 3230 } 3231} 3232 3233/** 3234 * æå®ããã¨ã¬ã¡ã³ãã®srcãæ¸ãæãã¾ãã(img) 3235 * @param id ã¨ã¬ã¡ã³ãã®ID 3236 * @param value è¨å®ããå¤ 3237 * @param isOverwrite 䏿¸ãããã 3238 */ 3239function setSrc(id, value, isOverwrite) { 3240 var element = document.getElementById(id); 3241 if (element != null && element != undefined) { 3242 if (isNullorUndefined(value)) { 3243 value = ""; 3244 } 3245 if(isOverwrite) { 3246 element.src = value; 3247 } else { 3248 if(element.src == null || element.src == "") { 3249 element.src = value; 3250 } 3251 } 3252 } 3253} 3254 3255/** 3256 * æå®ããã¨ã¬ã¡ã³ãã®valueãã³ãã¼ãã¾ãã(label/textarea/pre/span/div etc.) 3257 * @param from ã³ãã¼å ã¨ã¬ã¡ã³ãã®ID 3258 * @param to ã³ãã¼å ã¨ã¬ã¡ã³ãã®ID 3259 * @param isOverwrite 䏿¸ãããã 3260 */ 3261function copyInnerText(from, to, isOverwrite) { 3262 var fromElement = document.getElementById(from); 3263 var toElement = document.getElementById(to); 3264 3265 if (!isNullorUndefined(fromElement) && !isNullorUndefined(toElement)) { 3266 if(isOverwrite) { 3267 if (isNullorUndefined(fromElement.innerText)) { 3268 toElement.innerText = fromElement.innerText; 3269 } else if (isNullorUndefined(fromElement.textContent)) { 3270 // FireFox 3271 toElement.textContent = fromElement.textContent; 3272 } 3273 } else { 3274 if(toElement.innerText == null || toElement.innerText == "") { 3275 if (isNullorUndefined(fromElement.innerText)) { 3276 toElement.innerText = fromElement.innerText; 3277 } else if (isNullorUndefined(fromElement.textContent)) { 3278 // FireFox 3279 toElement.textContent = fromElement.textContent; 3280 } 3281 } 3282 } 3283 } 3284} 3285 3286/** 3287 * æå®ããã¨ã¬ã¡ã³ãã®srcãã³ãã¼ãã¾ãã(img) 3288 * @param from ã³ãã¼å ã¨ã¬ã¡ã³ãã®ID 3289 * @param to ã³ãã¼å ã¨ã¬ã¡ã³ãã®ID 3290 * @param isOverwrite 䏿¸ãããã 3291 */ 3292function copySrc(from, to, isOverwrite) { 3293 var fromElement = document.getElementById(from); 3294 var toElement = document.getElementById(to); 3295 3296 if (fromElement != null && fromElement != undefined && toElement != null && toElement != undefined) { 3297 if(isOverwrite) { 3298 toElement.src = fromElement.src; 3299 } else { 3300 if(toElement.src == null || toElement.src == "") { 3301 toElement.src = fromElement.src; 3302 } 3303 } 3304 } 3305} 3306 3307/** 3308 * GETãã©ã¡ã¼ã¿ãåå¾ãã¾ãã 3309 * @returns GETãã©ã¡ã¼ã¿ã®é£æ³é å 3310 */ 3311function getRequestParameter() { 3312 if(location.search.length > 1) { 3313 var get = new Object(); 3314 var ret = location.search.substr(1).split("&"); 3315 for(var i = 0; i < ret.length; i++) { 3316 var r = ret[i].split("="); 3317 get[r[0]] = r[1]; 3318 } 3319 return get; 3320 } else { 3321 return; 3322 } 3323} 3324 3325/** 3326 * ååãæå®ããè¦ç´ ã®å é ãåå¾ 3327 * @param name è¦ç´ å 3328 * @return åå¾ããelement 3329 */ 3330function getFirstElement(name){ 3331 var elements = document.getElementsByName(name); 3332 if (isNullorUndefined(elements) || elements.length == 0){ 3333 return undefined; 3334 } 3335 return elements[0]; 3336} 3337 3338/** 3339 * Debugç¨ããã¹ã表示 3340 */ 3341function writeDebugText(message) { 3342 var debugArea = document.createElement("div"); 3343 var message = document.createTextNode(ExDateTimeUtils.format(new Date(), "Y/m/d H:i:s : ") + message); 3344 debugArea.appendChild(message); 3345 document.body.appendChild(debugArea); 3346} 3347 3348/** 3349 * æå®ããIDã®intå¤ãåå¾ãã¾ãã 3350 * @param id ID 3351 * @returns intå¤ 3352 */ 3353function getIntValue(id) { 3354 var element = document.getElementById(id); 3355 if (element != null && element != undefined) { 3356 var intValue = parseInt(element.value); 3357 if (intValue != NaN) { 3358 return intValue; 3359 } else { 3360 return 0; 3361 } 3362 } else { 3363 return 0; 3364 } 3365} 3366 3367/** 3368 * å é ã大æåã«å¤æãã¦è¿å´ãã¾ãã 3369 * @param str 対象æåå 3370 * @returns 対象æååã®å é ã大æåã«ããæåå 3371 */ 3372function capitalize(str) { 3373 if (isNullorUndefinedorEmpty(str)) { 3374 return ""; 3375 } 3376 3377 return str.charAt(0).toUpperCase() + str.slice(1); 3378} 3379 3380/** 3381 * æå¹ãªçå¹´ææ¥ãã©ããå¤å®ãã¾ãã 3382 * @param targetDateText å¤å®å¯¾è±¡æ¥ä» 3383 * @param isIncludeToday æå¹æ¥ä»ã«ä»æ¥ãå«ããã 3384 * @returns æå¹ãªãtrue ç¡å¹ãªãfalse 3385 */ 3386function isAvailableBirthDay(targetDateText, isIncludeToday) { 3387 var compareResult = compareDateWithToday(targetDateText); 3388 if (isIncludeToday) { 3389 if (compareResult == 0 || compareResult == 1) { 3390 return true; 3391 } else { 3392 return false;
3393 } 3394 } else { 3395 if (compareResult == 1) { 3396 return true; 3397 } else { 3398 return false; 3399 } 3400 } 3401} 3402 3403/** 3404 * æ¬æ¥æ¥ä»ã¨æ¯è¼ãã¦ãæ¯è¼å¯¾è±¡æ¥æã®æ¹ãæªæ¥æ¥ã®æã¯-1 çããæã¯0 é廿¥ã®æã¯ 1ãè¿å´ãã¾ãã 3405 * @param targetDateText æ¯è¼å¯¾è±¡æ¥æ 3406 */ 3407function compareDateWithToday(targetDateText) { 3408 var date = new Date(targetDateText); 3409 var now = new Date(); 3410 var today = new Date(now.getFullYear(), now.getMonth(), now.getDate()); 3411 return compareDate(today, date); 3412} 3413 3414/** 3415 * 2ã¤ã®æ¥ä»ãæ¯è¼ãã¦æ¥ä»1ã®æ¹ãæªæ¥æ¥ã®æã¯1 çããæã¯0 é廿¥ã®æã¯ -1ãè¿å´ãã¾ãã 3416 * @param targetDate1 æ¥ä»1 3417 * @param targetDate2 æ¥ä»2 3418 * @returns æ¯è¼çµæ 3419 */ 3420function compareDate(targetDate1, targetDate2) { 3421 if (targetDate1 > targetDate2) { 3422 return 1; 3423 } else if ((targetDate1 - targetDate2) == 0){ 3424 return 0; 3425 } else { 3426 return -1; 3427 } 3428} 3429 3430/** 3431 * ãµãã¿ã¤ãºé¢æ°ã§ãã 3432 * @param target ãµãã¿ã¤ãºã®å¯¾è±¡ã§ããæåå以å¤ã®å ´åã¯ãã®ã¾ã¾è¿å´ãã¾ãã 3433 * @return ãµãã¿ã¤ãºãããæåå(対象ãæåå以å¤ã®å ´åã¯å¼æ°ããã®ã¾ã¾è¿å´) 3434 */ 3435function escapeHTML(target) { 3436 if (isNullorUndefined(target)) { 3437 return target; 3438 } 3439 3440 if (typeof target != 'string') { 3441 return target; 3442 } 3443 target = target.replace(/</g, '<'); 3444 target = target.replace(/>/g, '>'); 3445 target = target.replace(/&/g, '&'); 3446 target = target.replace(/"/g, '"'); 3447 target = target.replace(/'/g, '''); 3448 target = target.replace(/javascript:/g, ''); 3449 return target; 3450} 3451 3452/** 3453 * è¤æ°é¸æç¨ã®ãªã¹ããå°ãªãã¨ãä¸ã¤é¸æããã¦ãããå¤å®ãã¾ãã 3454 * @param id é ç®ID 3455 * @param indexSymbol é ç®ã®ã¤ã³ããã¯ã¹ã·ã³ãã« 3456 * @returns è¤æ°é¸æç¨ã®ãªã¹ããå°ãªãã¨ãä¸ã¤é¸æããã¦ããå ´åtrue 3457 */ 3458function isMultipleSelect(id, indexSymbol) { 3459 var targetId = id; 3460 if (!isNullorUndefinedorEmpty(indexSymbol)) { 3461 targetId = id + indexSymbol; 3462 } 3463 var element = document.getElementById(targetId); 3464 if (isNullorUndefined(element)) { 3465 return; 3466 } 3467 if (isNullorUndefined(element.multiple) || !element.multiple) { 3468 return; 3469 } 3470 var multipleSelects = new Array(); 3471 for (var i = 0; i < element.options.length; i++) { 3472 if (element.options[i].selected) { 3473 return true; 3474 } 3475 } 3476 return false; 3477} 3478 3479/** 3480 * è¤æ°é¸æç¨ã®ãªã¹ãã®é¸æãå ¨ã¦è§£é¤ãã¾ãã 3481 * @param id é ç®ID 3482 * @param indexSymbol é ç®ã®ã¤ã³ããã¯ã¹ã·ã³ãã« 3483 */ 3484function releaseMultipleSelect(id, indexSymbol) { 3485 var targetId = id; 3486 if (!isNullorUndefinedorEmpty(indexSymbol)) { 3487 targetId = id + indexSymbol; 3488 } 3489 3490 var element = document.getElementById(targetId); 3491 if (isNullorUndefined(element)) { 3492 return; 3493 } 3494 if (isNullorUndefined(element.multiple) || !element.multiple) { 3495 return; 3496 } 3497 var multipleSelects = new Array(); 3498 for (var i = 0; i < element.options.length; i++) { 3499 element.options[i].selected = false; 3500 } 3501} 3502 3503/** 3504 * è¤æ°é¸æç¨ã®ãªã¹ãã§é¸æããã¦ããå¤ããªã¹ãã§åå¾ãã¾ãã 3505 * @param id é ç®ID 3506 * @param indexSymbol é ç®ã®ã¤ã³ããã¯ã¹ã·ã³ãã« 3507 * @returns 鏿ããã¦ããå¤ã®ãªã¹ã 3508 */ 3509function getMultiSelectValues(id, indexSymbol) { 3510 var targetId = id; 3511 if (!isNullorUndefinedorEmpty(indexSymbol)) { 3512 targetId = id + indexSymbol; 3513 } 3514 3515 var element = document.getElementById(targetId); 3516 if (isNullorUndefined(element)) { 3517 return; 3518 } 3519 if (isNullorUndefined(element.multiple) || !element.multiple) { 3520 return; 3521 } 3522 3523 var values = new Array(); 3524 for (var i = 0; i < element.options.length; i++) { 3525 var option = element.options[i]; 3526 if (option.selected) { 3527 values.push(option.value); 3528 } 3529 } 3530 return values; 3531}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.