Showing
1 changed file
with
59 additions
and
5 deletions
| ... | @@ -3,6 +3,58 @@ | ... | @@ -3,6 +3,58 @@ |
| 3 | <head> | 3 | <head> |
| 4 | <title><%= title %></title> | 4 | <title><%= title %></title> |
| 5 | <link rel='stylesheet' href='/stylesheets/style.css' /> | 5 | <link rel='stylesheet' href='/stylesheets/style.css' /> |
| 6 | + <!-- Jquery를 불러온다 --> | ||
| 7 | + <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script> | ||
| 8 | + <script> | ||
| 9 | + var place = prompt("위치를 입력해 주세요. ex) 전자정보대학", ""); //위치 정보를 입력 받는다. | ||
| 10 | + alert(place + '(으)로 설정되었습니다.'); | ||
| 11 | + var fileName = place + '.txt'; // 위치를 파일 이름으로 쓰기 위함. | ||
| 12 | + | ||
| 13 | + var nameArr = []; // 이름을 저장할 배열 | ||
| 14 | + var numArr = []; // 전화번호를 저장할 배열 | ||
| 15 | + var idArr = []; // 신분을 저장할 배열 | ||
| 16 | + var dayTimeArr = []; // 날짜와 시간을 저장할 배열 | ||
| 17 | + | ||
| 18 | + function getDayTime() // 날짜와 시간을 구해주는 함수 | ||
| 19 | + { | ||
| 20 | + var today = new Date(); | ||
| 21 | + var day = today.toLocaleDateString(); //년도.월.날짜 | ||
| 22 | + var time = today.toLocaleTimeString(); //시:분:초 | ||
| 23 | + return (day + ' ' + time); | ||
| 24 | + }; | ||
| 25 | + | ||
| 26 | + function getInfo() // 입력받은 데이터를 배열에 저장한다. | ||
| 27 | + { | ||
| 28 | + var temp_name = document.getElementById('name').value; | ||
| 29 | + var temp_num = document.getElementById('number').value; | ||
| 30 | + var id_index = document.getElementById('identity'); | ||
| 31 | + var temp_id = id_index.options[id_index.selectedIndex].value; | ||
| 32 | + var dateTime = getDayTime(); | ||
| 33 | + nameArr.push(temp_name); | ||
| 34 | + console.log(nameArr); | ||
| 35 | + numArr.push(temp_num); | ||
| 36 | + console.log(numArr); | ||
| 37 | + idArr.push(temp_id); | ||
| 38 | + console.log(idArr); | ||
| 39 | + dayTimeArr.push(dateTime); | ||
| 40 | + console.log(dayTimeArr); | ||
| 41 | + | ||
| 42 | + }; | ||
| 43 | + | ||
| 44 | + function save() // 배열에 저장한 데이터를 가공해 json파일의 형태로 만들고, 다운로드 링크를 생성한다. | ||
| 45 | + { | ||
| 46 | + var obj = new Object(); | ||
| 47 | + for (var i = 0; i< nameArr.length; i++) | ||
| 48 | + { | ||
| 49 | + obj[nameArr[i]] = {"전화번호": numArr[i], "신분": idArr[i], "일시": dayTimeArr[i]}; | ||
| 50 | + } | ||
| 51 | + var obj_s = JSON.stringify(obj, null, "\t"); //json text화 시키기. | ||
| 52 | + var dataUri = "data:application/json;charset=utf-8,"+ encodeURIComponent(obj_s);// 파일 링크 생성 | ||
| 53 | + var link = $("#link").attr("href", dataUri); | ||
| 54 | + console.log('Save Complete'); | ||
| 55 | + document.getElementById('link').setAttribute('download', fileName); // 다운로드 전 파일 이름을 변경해준다. | ||
| 56 | + }; | ||
| 57 | + </script> | ||
| 6 | </head> | 58 | </head> |
| 7 | <body> | 59 | <body> |
| 8 | <h1><%= title %></h1> | 60 | <h1><%= title %></h1> |
| ... | @@ -25,20 +77,22 @@ | ... | @@ -25,20 +77,22 @@ |
| 25 | <fieldset style = "width:600px"> | 77 | <fieldset style = "width:600px"> |
| 26 | <legend>방문자 인적 사항</legend> | 78 | <legend>방문자 인적 사항</legend> |
| 27 | 이름: | 79 | 이름: |
| 28 | - <input type='text' name='name' style="width:70px" required/> | 80 | + <input type='text' id='name' style="width:70px" required/> |
| 29 | 전화번호: | 81 | 전화번호: |
| 30 | - <input type='text' name='number' style="width:250px" placeholder="XXX-XXXX-XXXX 형식으로 입력하세요." required/> | 82 | + <input type='text' id='number' style="width:250px" placeholder="XXX-XXXX-XXXX 형식으로 입력하세요." required/> |
| 31 | <div style="display:inline">신분:</div> | 83 | <div style="display:inline">신분:</div> |
| 32 | - <select name = "id" style="width: 50;"> | 84 | + <select id = "identity" style="width: 50;"> |
| 33 | <option value = "재학생">재학생</option> | 85 | <option value = "재학생">재학생</option> |
| 34 | <option value = "휴학생">휴학생</option> | 86 | <option value = "휴학생">휴학생</option> |
| 35 | <option value = "직원">직원</option> | 87 | <option value = "직원">직원</option> |
| 36 | <option value = "외부인">외부인</option> | 88 | <option value = "외부인">외부인</option> |
| 37 | </select><br><br> | 89 | </select><br><br> |
| 38 | - <input type = "submit" value = "제출"/> | 90 | + <button type="button" onclick="getInfo();">제출</button> |
| 39 | - <input type = "reset" value = "다시입력"/> | 91 | + <input type = "reset" value = "다시입력"/> |
| 40 | </fieldset> | 92 | </fieldset> |
| 41 | </form> | 93 | </form> |
| 94 | + <button type="button" onclick="save();">저장</button> | ||
| 95 | + <a href="#" id="link" download="name">다운로드</a> | ||
| 42 | <script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@1.3.1/dist/tf.min.js"></script> | 96 | <script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@1.3.1/dist/tf.min.js"></script> |
| 43 | <script src="https://cdn.jsdelivr.net/npm/@teachablemachine/image@0.8/dist/teachablemachine-image.min.js"></script> | 97 | <script src="https://cdn.jsdelivr.net/npm/@teachablemachine/image@0.8/dist/teachablemachine-image.min.js"></script> |
| 44 | <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> | 98 | <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> | ... | ... |
-
Please register or login to post a comment