티스토리 뷰

1. 실습. 현재 페이지가 띄워진 다음 10초 카운트를 콘솔창에 출력하고
0초에 창을 닫아라.

 	<script type="text/javascript">
	var cnt=10;
	setInterval(function(){
		console.log(cnt);
		if(cnt == 0){
			close();
		}
		cnt--;
	}, 1000);
		
		</script>

 

2. 실습. 사용자에게 숫자형 데이타인 점수를 5개 받아서 평균값을 구하고 그 결괏값을
경고창으로 띄워 사용자에게 알려주는 코드를 작성하고 실행하여라.

 

1)내가 한 풀이..

 	<script type="text/javascript">
		 var age1 = prompt('숫자입력1');
		 var age2 = prompt('숫자입력2');
		 var age3 = prompt('숫자입력3');
		 var age4 = prompt('숫자입력4');
		 var age5 = prompt('숫자입력5');
		
		var a1 = Number(age1)
		var a2 = Number(age2)
		var a3 = Number(age3)
		var a4 = Number(age4)
		var a5 = Number(age5)
		var avg = (a1+a2+a3+a4+a5)/5;
		console.log(avg);
		alert('평균은'+avg);
	
		
		</script>

2) 선생님 풀이

		<script type="text/javascript">
		var sum = 0;
		var n = 5;
		for(var i=0; i<n; i++){
			sum +=Number(prompt((i+1)+'번째 점수를 임력해주세요'));
		}
		alert('당신의 평균은 '+(sum/n)+'입니다');
		</script>

html 요소 이벤트

- 모든 태그는 on 접두사를 가진 속성이 있다. 
- on 접두사 뒤에 오는 단어는 사용자 행위에 관련된 단어이다.
- 해당 속성의 값에는 자바스크립트 코드가 들어 갈 수 있다.
- 해당 속성의 값에서 함수를 실행시킬 수 있다.
- 함수를 실행하면서 행위대상인 태그객체를 this 키워드로 하여 행위 대상 자신을 인수에 삽입 할 수 있다.
- dom 객체에 접근이 되었다면(태그객체) 해당객체(태그) 속성에 접근이 가능하다. 

 

1)on 접두사 뒤의 click 은 사용자 행위에 관련된 단어이다. 버튼을 클릭하면 '안녕하세요' 라는 알림창이 뜬다.

<button type ="button" onclick="alert('안녕하세요');">버튼 클릭</button>

 

2) 함수를 실행 시킬 수 있다. 

<button type ="button" onclick="myFn();">버튼 클릭2</button>
function myFn(){
	 		alert('안녕하세요. 홍길동입니다.');
	 	}

 

3) this 키워드로 하여 행위 대상 자신을 인수에 삽입 할 수 있다.

this는 <buttom ~ /button> 자기자신인 태그이다. 

<button type ="button" onclick="myFn2(this);" value ="홍길동">버튼 클릭3</button>
	function myFn2(btn){ 
	 		// btn은 <button~ /button> 자기 자신이다.
	 		console.log(btn);
	 		console.log(btn.value, '버튼의 value 속성');
	 	}


자주 쓰이는 html 요소 이벤트 종류 (on 속성 종류)

click

- 사용자가 클릭하는 행위에 관련된 속성

 

change

- 사용자가 값을 변화 시켰을 경우에 관련된 속성
- select 태그에서 많이 쓰인다.

<select onchange ="myChange(this)">
		<option value =""> :: 선택 ::</option>
		<option value ="전주"> 전주</option>
		<option value ="군산"> 군산</option>
	</select>
	
	<script type="text/javascript">
		function myChange(obj){
			console.log(obj.value, 'change 이벤트 값 변화 확인')
		}
	</script>

 

사용자가 키 입력했을 경우와 관련된 속성

 

- keyup : 키를 눌렀다가 뗐을 경우

<input type="text" onkeyup="myKey(this, 'keyup');" placeholder ="keyup">
	<script type="text/javascript">
		function myKey(obj, type){
			console.log(obj.value, type);
		}
	</script>

 

<- 입력할 때마다 콘솔창에 출력된다.

 

 

 

- keydown : 키를 눌렀을 때

<input type="text" onkeydown="myKey(this, 'keydown');" placeholder ="keydown">

- keypress : 키를 누르고 있을 때

<input type="text" onkeypress="myKey(this, 'keypress');" placeholder ="keypress">

- blur : 커서가 없어 졌을 경우

<input type="text" onblur="myKey(this, 'blur');" placeholder ="blur">

<- 입력하고 커서를 입력창 바깥쪽에 클릭한 경우 콘솔창에 출력.

 


- focus : 커서가 생겼을 경우

<input type="text" onfocus="myKey(this, 'focus');" placeholder ="focus">

<- 해당 입력창을 클릭하여 커서가 생긴경우 콘솔창에 'focus' 출력

 

 

 


style 속성에 접근하기

- 모든 태그는  style 속성을 가지고 있다.
- 접근 객체는 style 속성을 조작 할 수 있다.

	<script type="text/javascript">
		function myStyle(obj, type){
			//console.log(obj.style);
			if(type == 'focus'){
				//dom 객체에는 style 속성이 있으므로 접근이 가능하다.
				//style 속성은 css style 종류를 표현하는 객체이다.
				//즉, dom 객체의 style 속성에 접근하여 css style 객체 접근 후 css style 조작이 가능하다.
				obj.style.border = '10px solid #f01';
				obj.value = '포커스 되었습니다';
				
			}else{
				obj.style.border = '';
				obj.value = '';
			}
		}
	</script>

<- 포커스 전

 

 

<- 포커스 후

 

 

 


1. 실습. 사용자에게 숫자형 데이타인 점수를 5개 받아서 평균값을 구하고 그 결괏값을
경고창으로 띄워 사용자에게 알려주는 코드를 작성하고 실행하여라.

 

1)내가 한 풀이

 	<script type="text/javascript">
		 var age1 = prompt('숫자입력1');
		 var age2 = prompt('숫자입력2');
		 var age3 = prompt('숫자입력3');
		 var age4 = prompt('숫자입력4');
		 var age5 = prompt('숫자입력5');
		
		var a1 = Number(age1)
		var a2 = Number(age2)
		var a3 = Number(age3)
		var a4 = Number(age4)
		var a5 = Number(age5)
		var avg = (a1+a2+a3+a4+a5)/5;
		console.log(avg);
		alert('평균은'+avg);
	
		
		</script>

2) 선생님 풀이

<script type="text/javascript">
		var sum = 0;
		var n = 5;
		for(var i=0; i<n; i++){
			sum +=Number(prompt((i+1)+'번째 점수를 임력해주세요'));
		}
		alert('당신의 평균은 '+(sum/n)+'입니다');
		</script>

 

2. 실습.

1) db에서 가지고 온 상품 목록을 라디오 박스로 구성하고
해당 라디오 박스를 선택시 상품 코드와 가격이 콘솔에 출력될 수 있도록 코드를 작성하고
실행하도록 하여라.

 

GoodsDto.java

package kr.or.ksmart.dto;

public class GoodsDto {
	
	private String goodsCode;
	private String goodsName;
	private int goodsPrice;
	
	public String getGoodsCode() {
		return goodsCode;
	}
	public void setGoodsCode(String goodsCode) {
		this.goodsCode = goodsCode;
	}
	public int getGoodsPrice() {
		return goodsPrice;
	}
	public void setGoodsPrice(int goodsPrice) {
		this.goodsPrice = goodsPrice;
	}
	public String getGoodsName() {
		return goodsName;
	}
	public void setGoodsName(String goodsName) {
		this.goodsName = goodsName;
	}
	
}

jsex02.jsp

<%
		for(int i= 0; i<goodsList.size(); i++){
		GoodsDto g = goodsList.get(i);
		
		String getGoodsName = g.getGoodsName();
		String getGoodsCode = g.getGoodsCode();
		int getGoodsPrice = g.getGoodsPrice();
		
		%>
		<%= getGoodsName %>
		<input type ="radio" onclick ="myKey(this);" value="<%="코드:"+ goodsList.get(i).getGoodsCode() %>
		<%= "," %><%="가격:"+ goodsList.get(i).getGoodsPrice() %>">
		<% }%>
	
	<script type="text/javascript">
		function myKey(obj){
			console.log(obj.value);
		}
	</script>

 

2) 실습. db에서 가지고 온 상품 목록을 select box로 구성을 하고
사용자가 select 목록에 있는 상품을 선택시 해당 상품의 가격을 콘솔에 출력하여라.

<select onchange ="myChange(this)">
		<option value =""> :: 선택 ::</option>
	
		<%
		
		for(int i= 0; i<goodsList.size(); i++){
		GoodsDto g = goodsList.get(i);
		
		String getGoodsName = g.getGoodsName();
		String getGoodsCode = g.getGoodsCode();
		int getGoodsPrice = g.getGoodsPrice();
		
		%>
	<option value ="<%=goodsList.get(i).getGoodsPrice() %>" ><%=goodsList.get(i).getGoodsName() %> </option>
 	<%} %>
	</select>
		
	<script type="text/javascript">
		function myChange(obj){
			console.log("가격은:", obj.value);
		}
	</script>

 

 

3. 실습. 제휴 업체를 select 박스로 구성하고 해당 사이트를 제휴 업체를선택 했을 경우
새창으로 해당 사이트가 접속될 수 있도록 구성하여라.

 

companyList.java

package kr.or.ksmart.dto;

public class companyList {

	private String companyName;
	private String companyLink;
	public String getCompanyName() {
		return companyName;
	}
	public void setCompanyName(String companyName) {
		this.companyName = companyName;
	}
	public String getCompanyLink() {
		return companyLink;
	}
	public void setCompanyLink(String companyLink) {
		this.companyLink = companyLink;
	}
	
	
}

-> 피드백 : 클래스명은 파스칼 표기법으로.

 

jsex03.jsp

  <%@ page import = "kr.or.ksmart.dto.companyList" %>
 <%@ page import ="java.util.ArrayList" %>
    <%
    /*
    제휴업체목록
    naver, ksmart, daum

    */
 	ArrayList<companyList> List = new ArrayList<companyList>();
 	companyList clist = null;
 	
 	clist = new companyList();
 	clist.setCompanyName("네이버");
 	clist.setCompanyLink("http://www.naver.com");
 	List.add(clist);
 	
 	clist = new companyList();
 	clist.setCompanyName("ksmart");
 	clist.setCompanyLink("http://ksmart.or.kr");
 	List.add(clist);
 	
 	clist = new companyList();
 	clist.setCompanyName("다음");
 	clist.setCompanyLink("http://www.daum.net");
 	List.add(clist);

    %>
    
    
    <select onchange ="myChange(this)">
		<option value =""> :: 선택 ::</option>
		<%
		
		for(int i= 0; i<List.size(); i++){
		companyList cl = List.get(i);
		
		String getGoodsName = cl.getCompanyName();
		String getGoodsCode = cl.getCompanyLink();
		
		%>
	<option value ="<%=List.get(i).getCompanyLink() %>" ><%=List.get(i).getCompanyName() %> </option>
 	<%} %>
 	
	</select>
	<script type="text/javascript">
		function myChange(obj){
			//open(obj.value); //새창
			//location.href = obj.value; // 페이지 이동
		}
	</script>

 

'41기 개발자과정' 카테고리의 다른 글

20211024 오류 Incorrect integer value:  (0) 2021.10.24
20211020 32단계_jsp_java_DTO_DAO_list처리  (0) 2021.10.23
20211019 데이터베이스 02  (0) 2021.10.19
20211015 popup  (0) 2021.10.18
20211012 jsp-java DTO  (0) 2021.10.13
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
«   2025/09   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함