웹마스터 팁



스크립트를 구할때 자주 가는 사이트인데 좋은게 올라와 있더군요

각자 사용자의 입맛에 맛게 조금만 코딩하거나 모양을 변화 준다면 좋을거 같습니다

세이나 네이버 혹은 msn등 요즘 왠만한 사이트에서 쓰는 메뉴 추가 삭제 수정에 쓰는 스크립트와

같은 분류라 생각하시면 될듯

아울러 해피 스크립트의 운영자이신 매직님에게도 감사합니다 소스 올릴수 있게 허락해 주셔서^^


아래의 스크립트를  따서 실행해 보세요


///////////////////////////////////////////////////////////////////////

<script language="javascript">
<!--
var cso_temp = new Array();

function Change_SelectOption(cso_type) {
        with(document.cso_form) {
                if(cso_type != "add") {
                        if(cso_main.options.selectedIndex == -1) {
                                if(cso_type == "up" || cso_type == "edit" || cso_type == "del") {
                                        cso_temp[0] = 0;
                                } else
                                if(cso_type == "down") {
                                        cso_temp[0] = cso_main.options.length-1;
                                }
                                alert('선택된게 없으니 '+cso_temp[0]+'번째 Option으로 선택합니다.');
                                cso_main.options[cso_temp[0]].selected = true;
                                Change_SelectOption_Del('select');
                        } else {
                                if(cso_type == "up") {
                                        if(cso_main.options.selectedIndex == 0) {
                                                alert('위로 올리지 못합니다.');
                                        } else {
                                                Change_SelectOption_UpnDown('up');
                                        }
                                } else
                                if(cso_type == "down") {
                                        if(cso_main.options.selectedIndex == cso_main.options.length-1) {
                                                alert('아래로 내리지 못합니다.');
                                        } else {
                                                Change_SelectOption_UpnDown('down');
                                        }
                                } else
                                if(cso_type == "del") {
                                        Change_SelectOption_Del('execute');
                                } else
                                if(cso_type == "edit") {
                                        Change_SelectOption_AddnEdit('edit');
                                }
                        }
                } else {
                        Change_SelectOption_AddnEdit('add');
                }
        }
}

function Change_SelectOption_UpnDown(csoud_type){
        with(document.cso_form) {
                if(csoud_type == 'up') {
                        csoud_type = '-';
                } else
                if(csoud_type == 'down') {
                        csoud_type = '+';
                }
                cso_temp[0] = cso_main.options.selectedIndex;
                cso_temp[1] = eval('cso_main.options[cso_temp[0]'+csoud_type+'1].text');
                cso_temp[2] = eval('cso_main.options[cso_temp[0]'+csoud_type+'1].value');
                eval('cso_main.options[cso_temp[0]'+csoud_type+'1] = new Option(cso_main.options[cso_temp[0]].text,cso_main.options[cso_temp[0]].value)');
                cso_main.options[cso_temp[0]] = new Option(cso_temp[1],cso_temp[2]);
                eval('cso_main.options[cso_temp[0]'+csoud_type+'1].selected = true');
                Change_SelectOption_Del('select');
        }
}

function Change_SelectOption_Del(csod_type) {
        with(document.cso_form) {
                if(csod_type == 'select') {
                        cso_delnedit_index.value = cso_main.options.selectedIndex;
                        if(cso_main.options[cso_main.options.selectedIndex].text == '' && cso_main.options[cso_main.options.selectedIndex].value == '') {
                                cso_main.options[0].selected = true;
                        } else {
                                cso_delnedit_text.value = cso_main.options[cso_main.options.selectedIndex].text;
                                cso_delnedit_value.value = cso_main.options[cso_main.options.selectedIndex].value;
                        }
                } else
                if(csod_type == 'execute') {
                        if(confirm(cso_main.options.selectedIndex+'번째 Option을 삭제합니까?')) {
                                if(cso_main.options.selectedIndex != 0) {
                                        for(var i=0; i<cso_main.options.selectedIndex; i++) {
                                                cso_temp[i] = new Array();
                                                cso_temp[i][0] = cso_main.options[i].text;
                                                cso_temp[i][1] = cso_main.options[i].value;
                                        }
                                }
                                for(i=cso_main.options.selectedIndex+1; i<cso_main.options.length; i++) {
                                                cso_temp[i-1] = new Array();
                                                cso_temp[i-1][0] = cso_main.options[i].text;
                                                cso_temp[i-1][1] = cso_main.options[i].value;
                                }
                                for(i=0; i<cso_temp.length; i++) {
                                        cso_main.options[i] = new Option(cso_temp[i][0],cso_temp[i][1]);
                                }
                                cso_main.options[cso_main.options.length-1] = new Option();
                                if(cso_main.options[0].text == '' && cso_main.options[0].value == '') {
                                        alert('Option의 값은 최소 1개로 0번째 Option에 임시값을 입력합니다.');
                                        cso_main.options[0] = new Option('Temp','Temp');
                                }
                                cso_main.options[0].selected = true;
                                Change_SelectOption_Del('select');
                                if(cso_main.options[0].text == 'Temp' && cso_main.options[0].value == 'Temp') {
                                        cso_delnedit_text.select();
                                }
                        }
                }
        }
}

function Change_SelectOption_AddnEdit(csoae_type) {
        with(document.cso_form) {
                if(csoae_type == 'edit') {
                        csoae_type = 'deln'+csoae_type;
                }
                if(eval("cso_"+csoae_type+"_text.value != '' && cso_"+csoae_type+"_value.value != ''")) {
                        if(eval("cso_"+csoae_type+"_text.value.toLowerCase() != 'temp' && cso_"+csoae_type+"_value.value.toLowerCase() != 'temp'")) {
                                if(csoae_type == 'add') {
                                        cso_temp[0] = Change_SelectOption_NullCheck(cso_main.options.length);
                                } else
                                if(csoae_type == 'delnedit') {
                                        cso_temp[0] = 'cso_main.options.selectedIndex';
                                }
                                eval("cso_main.options["+cso_temp[0]+"] = new Option(cso_"+csoae_type+"_text.value,cso_"+csoae_type+"_value.value)");
                                if(csoae_type == 'delnedit') {
                                        cso_temp[0] = 'cso_delnedit_index.value';
                                }
                                eval('cso_main.options['+cso_temp[0]+'].selected = true');
                                if(csoae_type == 'add') {
                                        cso_main.size = cso_main.options.length;
                                        cso_add_text.value = '';
                                        cso_add_value.value = '';
                                        Change_SelectOption_Del('select');
                                }
                        } else {
                                alert('임시값은 허용하지 않습니다.');
                                eval("cso_temp[0] = cso_"+csoae_type+"_text.value.toLowerCase() == 'temp' ? 'text' : 'value'");
                                eval('cso_'+csoae_type+'_'+cso_temp[0]+'.select()');
                        }
                } else {
                        eval("cso_temp[0] = cso_"+csoae_type+"_text.value == '' ? 'Text' : 'Value'");
                        alert(cso_temp[0]+'값이 비었습니다.');
                        eval('cso_'+csoae_type+'_'+cso_temp[0].toLowerCase()+'.focus()');
                }
        }
}

function Change_SelectOption_NullCheck(csonc_no) {
        with(document.cso_form) {
                if(cso_main.options[csonc_no-1].text == '' && cso_main.options[csonc_no-1].value == '') {
                        Change_SelectOption_NullCheck(csonc_no-1);
                } else {
                        cso_temp[1] = csonc_no;
                }
        }
        return cso_temp[1];
}
//-->
</script>

<form name="cso_form">
<select name="cso_main" size="5" onchange="Change_SelectOption_Del('select');">
<option value="Example_0">Example_0
<option value="Example_1">Example_1
<option value="Example_2">Example_2
<option value="Example_3">Example_3
<option value="Example_4">Example_4
</select>

<input type="button" value="UP" onclick="Change_SelectOption('up');">
<input type="button" value="DOWN" onclick="Change_SelectOption('down');">

<br><br>

text : <input type="text" name="cso_add_text"><br>
value : <input type="text" name="cso_add_value">
<input type="button" value="ADD" onclick="Change_SelectOption('add');">

<br><br>

index : <input type="text" name="cso_delnedit_index" readonly><br>
text : <input type="text" name="cso_delnedit_text"><br>
value : <input type="text" name="cso_delnedit_value">
<input type="button" value="EDIT" onclick="Change_SelectOption('edit');">
<input type="button" value="DEL" onclick="Change_SelectOption('del');">
</form>
제목 글쓴이 날짜
[동주아빠] PHP 게시판(끝.29강) - 삭제(delete_ok.php) [18] 손병목 2003.01.11
[동주아빠] PHP 게시판(28강) - 삭제(delete.php) 손병목 2003.01.11
누구나 만들수있는 게시판 [글삭제, 수정 부분] [4] file Mr. JH 2002.08.21
교육용 방명록 #8 [delete.php3파일에서 넘겨받은 비밀번호를 검사하여 글을 삭제합니다.] [18] zero 2000.07.03
교육용 방명록 #7 [삭제 버튼을 눌렀을 때 비밀번호를 입력받는 부분입니다.] [5] zero 2000.07.03
동적 테이블 (행추가, 특정행 삭제) Juny. 2008.02.20
메뉴 추가 삭제 수정시 쓰면 좋을것 같네요 - 출처: http://www.happyscript.com/ [1] 예뜨락 2004.09.17
[레드의 태그중급]폼 태그..(이상해져서 삭제하구 다시 적습니다) [3] 레드 2003.01.15
내가 작성 한 글에 대한 일괄 삭제/이동/복사 권한 주기 [2] file 개돌 2009.05.15
IE의 특정 도메인 인터넷 임시 파일 Cache만 삭제하기 [3] NetEagle 2008.10.22
플래너 "한줄공지" 가 삭제되지 않는 경우 의 임시대응법 [2] file Gekkou 2009.10.13
수정,삭제 버튼을 "이 게시물을.."에 넣기 [1] hangoon 2008.04.16
FTP로 지워지지 않는 파일 삭제방법. [9] pakjce 2008.07.05
[초보팁] 우리말 수정하기(예제: 가입창 이름란 삭제) [3] 블루파티 2008.08.19
텔넷으로 순간 압축풀기/폴더 삭제/폴더파일 압축하기... [5] Crazyhouse.cn 2008.05.19
쪽지 답글 보내기 원본 내용 삭제 절망린 2009.06.24
까페 아이디 삭제후 동일 아이디로 생성하는 방법 키스메리 2009.05.15