// LTRIM
String.prototype.ltrim = function()
{
var re = /\s*((\S+\s*)*)/;
return this.replace(re, "$1");
};
// RTRIM
String.prototype.rtrim = function()
{
var re = /((\s*\S+)*)\s*/;
return this.replace(re, "$1");
};
// TRIM
String.prototype.trim = function()
{
return this.ltrim().rtrim();
};
//replaceALL
String.prototype.replaceAll = function(str1, str2)
{
var temp = this;
while(1){
if( temp.indexOf(str1) != -1 )
temp = temp.replace(str1, str2);
else
break;
}
return temp;
};
//플래시 파일 로드 함수
function loadFlash(objSrc, width, height, wmode) {
var obj = '';
obj += '<object type="application/x-shockwave-flash" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="'+width+'" height="'+height+'">';
obj += '<param name="movie" value="'+objSrc+'">';
obj += '<param name="quality" value="high">';
obj += '<param name="bgcolor" value="#000000">';
obj += '<param name="wmode" value="'+wmode+'">';
obj += '<param name="menu" value="false">';
obj += '<param name="Command" value="Close">';
obj += '<param name="swliveconnect" value="true">';
obj += '<embed src="'+objSrc+'" quality=high bgcolor="#000000" width="'+width+'" height="'+height+'" swliveconnect="true" id="param" name="param" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"><\/embed>';
obj += '<\/object>';
document.write(obj);
}
// 새창띄우기
function fncOpenPanel(strUrl, inrWidth, intHeight) {
var newp = "width=" + inrWidth + ", height=" + intHeight + ", directories=no, scrollbars=no, resizable=yes";
window.open(strUrl, "new", newp);
}
// 새창띄우기 스크롤
function fncOpenPanel_SC(strUrl, inrWidth, intHeight) {
var newp = "width=" + inrWidth + ", height=" + intHeight + ", directories=no, scrollbars=yes, resizable=no";
window.open(strUrl, "new", newp);
}
// 숫자만 입력
function onlyNumber() {
if((event.keyCode<48)||(event.keyCode>57))
{
alert('숫자만 입력 가능합니다');
event.returnValue=false;
}
}
// 자릿수확인(최소글자수)
function fncMinCheck(strFrmName, strFieldName, strFieldNickName, intMin) {
var strCheckObj = eval("document."+strFrmName+"."+strFieldName);
if (strCheckObj.value.length<intMin) {
alert(strFieldNickName+" 항목을 확인하세요.\n"+strFieldNickName+" 항목은 "+intMin+"글자 이상이어야 합니다.");
strCheckObj.focus();
return false;
}
else { return true; }
}
// 자릿수확인(최대글자수)
function fncMinMaxCheck(strFrmName, strFieldName, strFieldNickName, intMin, intMax) {
var strCheckObj = eval("document."+strFrmName+"."+strFieldName);
if (strCheckObj.value.length<intMin || strCheckObj.value.length>intMax) {
alert(strFieldNickName+" 항목을 확인하세요.\n"+strFieldNickName+" 항목을 "+intMin+"글자 이상 "+intMax+"글자 이하이어야 합니다.");
strCheckObj.focus();
return false;
}
else { return true; }
}
// 공란체크
function fncNullCheck(strFrmName, strFieldName, strFieldNickName) {
var strCheckObj = eval("document."+strFrmName+"."+strFieldName);
if (strCheckObj.value.indexOf(" ")>0) {
alert(strFieldNickName+" 항목을 확인하세요.\n"+strFieldNickName+" 항목에 공란은 허용되지 않습니다.");
strCheckObj.focus();
return false;
}
else { return true; }
}
// 숫자만 등록되도록 체크
function fncValidString09Check (strFrmName, strFieldName, strFieldNickName) {
var ValidString="0123456789";
var strCheckObj = eval("document."+strFrmName+"."+strFieldName);
for (i=0; i<strCheckObj.value.length; i++) {
if(ValidString.indexOf(strCheckObj.value.substring(i,i+1))<0) {
alert(strFieldNickName+" 항목에 허용할 수 없는 문자가 입력되었습니다.\n"+strFieldNickName+" 항목은 숫자로만 등록하실 수 있습니다.");
strCheckObj.focus();
return false;
}
}
return true;
}
// 숫자와 알파벳만 등록되도록 체크
function fncValidString09AZCheck (strFrmName, strFieldName, strFieldNickName) {
var ValidString="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
var strCheckObj = eval("document."+strFrmName+"."+strFieldName);
for (i=0; i<strCheckObj.value.length; i++) {
if(ValidString.indexOf(strCheckObj.value.substring(i,i+1))<0) {
alert(strFieldNickName+" 항목에 허용할 수 없는 문자가 입력되었습니다.\n"+strFieldNickName+" 항목은 영문자와 숫자로만 등록하실 수 있습니다.");
strCheckObj.value="";
strCheckObj.focus();
return false;
}
}
return true;
}
// 숫자와 알파벳 및 '-'만 등록되도록 체크
function fncValidString09AZDashCheck (strFrmName, strFieldName, strFieldNickName) {
var ValidString="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-";
var strCheckObj = eval("document."+strFrmName+"."+strFieldName);
for (i=0; i<strCheckObj.value.length; i++) {
if(ValidString.indexOf(strCheckObj.value.substring(i,i+1))<0) {
alert(strFieldNickName+" 항목에 허용할 수 없는 문자가 입력되었습니다.\n"+strFieldNickName+" 항목은 영문자와 숫자로만 등록하실 수 있습니다.");
strCheckObj.value="";
strCheckObj.focus();
return false;
}
}
return true;
}
function fncValidPasswordCheck (strFrmName, strFieldName, strFieldNickName) {
return true;
}
// 숫자만입력되게처리
function checkNumberKey(str)
{
if (event.keyCode != 8)
{
if (event.keyCode < 45 || event.keyCode > 57 || ((event.keyCode > 32 && event.keyCode < 48) || (event.keyCode > 57 && event.keyCode < 65) || (event.keyCode > 90 && event.keyCode < 97)))
event.returnValue = false;
}
}
// 이메일 유효체크
function fncValidEmailCheck(frm,fieldname)
{
reg = new RegExp("^[\\w\\-]+(\\.[\\w\\-_]+)*@[\\w\\-]+(\\.[\\w\\-]+)*(\\.[a-zA-Z]{2,3})$", "gi");
var emailobj = eval("document"+"."+frm+"."+fieldname);
if (!reg.test(emailobj.value))
{
alert("잘못된 형식의 이메일 주소입니다.\n다시 입력해주세요.");
emailobj.focus();
return false;
}
else
return true;
}
// 다음객체로 포커스이동
function funcNextFocus(frm,str,length,nextstr){
var strCheckObj=eval("document"+"."+frm+"."+str);
var strNextObj =eval("document"+"."+frm+"."+nextstr);
if(length==strCheckObj.value.length){
strNextObj.focus();
}
}
// 체크박스 값변경
function chkval(frm,str){
var strCheckObj=eval("document"+"."+frm+"."+str);
if(strCheckObj.value=='Y'){
strCheckObj.value='N';
}
else{
strCheckObj.value='Y';
}
}
// check 한 개수를 리턴한다.
function getCheckedCount( aElem )
{
var elem = document.all;
var cnt = 0;
for ( var i=0; i<document.all.length; i++ )
{
if ( ( elem[i].type == "checkbox" ) && ( elem[i].checked ) && ( elem[i].name == aElem ) )
cnt = cnt + 1;
}
return cnt;
}
// 지정된 이름을 가진 모든 checkbox를 check한다
function checkAll( aElem )
{
var elem = document.all;
var cnt = 0;
for ( var i=0; i<document.all.length; i++ ){
if ( ( elem[i].type == "checkbox" ) && ( elem[i].name == aElem ) ) elem[i].checked = true;
}
}
// 지정된 이름을 가진 모든 checkbox를 check 해제한다
function uncheckAll( aElem )
{
var elem = document.all;
var cnt = 0;
for ( var i=0; i<document.all.length; i++ ){
if ( ( elem[i].type == "checkbox" ) && ( elem[i].name == aElem ) ) elem[i].checked = false;
}
}
// 지정한 이름을 가진 모든 checkbox의 checked 값을 반전 한다.
function invertCheck( aElem )
{
var elem = document.all;
var cnt = 0;
for ( var i=0; i<document.all.length; i++ )
{
if ( ( elem[i].type == "checkbox" ) && ( elem[i].name == aElem ) )
{
if ( elem[i].checked )
{
elem[i].checked = false;
}
else
{
elem[i].checked = true;
}
}
}
}
// Radio에서 check 한 개수를 리턴한다.
function getRadioCheckedCount( aElem )
{
var elem = document.all;
var cnt = 0;
for ( var i=0; i<document.all.length; i++ )
{
if ( ( elem[i].type == "radio" ) && ( elem[i].checked ) && ( elem[i].name == aElem ) )
cnt = cnt + 1;
}
return cnt;
}
//지정된 이름을 가진 radio 폼의 선택 값을 리턴하다.
function getCheckedValue(radioObj) {
if(!radioObj)
return "";
var radioLength = radioObj.length;
if(radioLength == undefined)
if(radioObj.checked)
return radioObj.value;
else
return "";
for(var i = 0; i < radioLength; i++) {
if(radioObj[i].checked) {
return radioObj[i].value;
}
}
return "";
}
/**
// get 방식의 파라미터를 해당폼에 input hidden 객체로 생성한다.
*/
function get2post(frm,sSearch)
{
if (sSearch.length > 0)
{
var asKeyValues = sSearch.split('&');
var asKeyValue = '';
for (var i = 0; i < asKeyValues.length; i++)
{
asKeyValue = asKeyValues[i].split('=');
var e = document.createElement("input");
e.setAttribute("type","hidden");
e.setAttribute("name",asKeyValue[0]);
e.setAttribute("value",asKeyValue[1]);
e.setAttribute("_temp","true");
// alert("[" + e.name +"]:[" + e.value +"]");
frm.appendChild(e);
}
}
// alert("form 객체 갯수" + frm.elements.length);
}
// get2post로 생성한 임시 객체를 파괴한다.
function removeTempAttribute(frm)
{
var idx=0;
while (idx<frm.elements.length)
{
var obj = frm.elements[idx];
if( obj.getAttribute("_temp") != null && obj.getAttribute("_temp") == "true")
{
frm.removeChild(obj);
continue;
}
idx++;
}
}
//--- 페이징에서 쓸 함수
function goPage(pageUrl,tmpParam,tmppage)
{
var ttFrm = document.temporaryFrm;
ttFrm.method = "post";
ttFrm.action = pageUrl ;
get2post(ttFrm,tmpParam+"&page="+tmppage);
ttFrm.submit();
removeTempAttribute(ttFrm);
}
//이미지 크기에 맞는 새창 띄우기
//<a href="#" onClick="popimage('img01.jpg',250,167);return false">이미지 팝업 1</a>
function popimage(imagesrc,winwidth,winheight,wintitle)
{
var look='width='+winwidth+',height='+winheight+',' ;
popwin=window.open("","",look);
popwin.document.open();
popwin.document.write('<title>'+wintitle+'</title><body topmargin=0 leftmargin=0><img style=cursor:hand; onclick="self.close()" src="'+imagesrc+'"></body>');
popwin.document.close();
}
'Javascript' 카테고리의 다른 글
javascript 내부의 <!-- --> 또는 //<![CDATA[ -- //]]> 의 이해. (1) | 2015.02.06 |
---|---|
event.keyCode 번호표 (0) | 2010.11.14 |
유용한 스크립트 (0) | 2010.11.14 |
정규식 (0) | 2010.11.14 |
Ajax Request 이해 (0) | 2010.11.14 |