728x90
<select> 태그에 id 값으로 주어진 값으로 선택한 option 값이 넘어올 거임
뽑아서 쓰려면 document.getElementById('bookmarkGroup'); 으로 내가 지정한 아이디에 있는 정보를 가져오고
group.options[group.selectedIndex].value를 통해 선택한 option에 대한 value값을 result에 넣어줌.
아래 getParameterByName(name) 함수는 정규식으로 이 앞단 근처 wifi 정보보기에서 와이파이 관리번호를 가지고 이 wifi-detail로 넘어온 거임. (index.jsp에서 manageNo를 가지고 wifi-detail로 넘어옴. 관리번호를 통해 해당 wifi 정보를 db에서 찾고 상세정보보기 화면에 뿌려줌)
여기서 북마크 추가하기로 와이파이 명도 넘겨줄 필요가 있기 떄문에 index.jsp에서 넘어온 manageNo를 받기 위해 getParameterByname(name) 함수 사용. 이 함수 내에 사용된 location.search 는 url물음표 뒤에 있는 파라미터를 가져올 수 있음. 여기서는 ?manageNo=어쩌구가 넘어올 거임 여기서 값만을 파싱해 서버로 보내준 것 !
<select id="bookmarkGroup">
<option>북마크 그룹 이름 선택</option>
<%
for(BookMarkGroup b : bookmark) {
%>
<option value="<%=b.getBookmarkName() %>"><%=b.getBookmarkName() %> </option>
<% } %>
</select>
<button onclick="bookmarkadd_()">북마크 추가하기</button>
<script>
function bookmarkadd_() {
const group = document.getElementById('bookmarkGroup');
const result = group.options[group.selectedIndex].value;
location.href="/bookmark/bookmarkListadd?bookmarkGroup="+result+"&manageNo="+getParameterByName("manageNo");
}
function getParameterByName(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
</script>
참조
728x90
'공부 > Trouble Shooting' 카테고리의 다른 글
인텔리제이에서 h2-console 접속 실패 (0) | 2023.09.19 |
---|---|
PostMan 이용해서 Http Post요청 보내기 + Json 형식 요청 보내기 (0) | 2023.09.18 |
자바스크립트로 내 현재 위치 서버에 보내기 (0) | 2023.09.11 |
트리거 이용해서 북마크 그룹 수정될 때 수정된 날짜 업데이트 하기 (0) | 2023.09.11 |
jsp 파일에서 jsp파일로 값 전송 (javascript) (0) | 2023.09.11 |