[Day2] JS 2 [11/21] 

 

--๋ณต์Šต--

1. ๋ชจ๋‘ ์„ ํƒ ์ฒดํฌ๋ฐ•์Šค ์ฒ˜๋ฆฌ 

<div>
      <input type="checkbox">๋ชจ๋‘ ์„ ํƒ
      <br>
      <input type="checkbox">
      <input type="checkbox">
      <input type="checkbox">
      <input type="checkbox">
</div>

   

   ๋ชจ๋‘ ์„ ํƒ์ด๋ผ๋Š” ์ฒดํฌ ๋ฐ•์Šค๋ฅผ ์ฒดํฌํ•˜๋ฉด ๋‚˜๋จธ์ง€ ๋ชจ๋“  ์ฒดํฌ ๋ฐ•์Šค๋ฅผ ์ฒดํฌํ•˜๋„๋ก ์ฝ”๋”ฉํ•˜์„ธ์š”.

-js-

  <script>  
   document.querySelector("div > input[type=checkbox]:first-of-type").onclick = function (){
	   // aler t("์ด๋ฒคํŠธ ํ™•์ธ")
	   //alert( this.checked );
	   // getAttribute()
	   
	   // :not(selector)
	   var ckbs = document.querySelectorAll("div > input[type=checkbox]:not( input[type=checkbox]:first-of-type)");
	   for (var i = 0; i < ckbs.length; i++) {
		  ckbs[i].checked = this.checked ;
	   } // for	   
   }
</script>

-jquery-

// $(":checkbox:first-of-type").click(function (){
$(":checkbox").eq(0).click(function (){
  // $(":checkbox:not:(first-of-type)")
  
  // filter๋กœ ์ฒซ๋ฒˆ์งธ๊ฐ€ ์•„๋‹Œ ๊ฒƒ๋“ค ํ™•์ธ
  $(":checkbox").filter(function(index){
    return index >=1;
    })
    .click(function() {
      $(this).hide();
    });
  });
  
  // ์ง„์งœ์ฝ”๋”ฉ
  $(":checkbox")
    .filter(function(index){
      return index >= 1;
    }).prop("checked", $(":checkbox").eq(0).prop("checked"));
    // .prop("checked", $(this).prop("checked"));
  });

* $("input[type=checkbox]") = $(":checkbox")

 

2. p ํƒœ๊ธ€ ๋™์ ์œผ๋กœ 10๊ฐœ ์ƒ์„ฑํ•˜๊ณ ,  p ํƒœ๊ทธ๋ฅผ ํด๋ฆญํ•  ๋•Œ ๊ทธ p ํƒœ๊ทธ๋ฅผ ์ˆจ๊ธฐ๋Š” js ์ฝ”๋”ฉ์„ ํ•˜์„ธ์š” 

-js-

 <script>
   for (var i = 1; i <= 10 ; i++) {
	 // DOM ์‚ฌ์šฉ - ์š”์†Œ ์กฐ์ž‘(  ์ƒ์„ฑ, ์ˆ˜์ •, ์‚ญ์ œ  )
	 // Document    Object Model 
	 //      ๋ฌธ์„œ     -> ๊ฐ์ฒด             +  ์†์„ฑ, ๋ฉ”์„œ๋“œ
	 let pEle = document.createElement("p");  // Node	 
	 pEle.innerText = "์ƒ์„ฑ๋œ p - " + i;
	 pEle.style.border = "1px solid gray";
	 // pEle ํด๋ฆญ ์ด๋ฒคํŠธ ๋“ฑ๋ก - addEventListener()/ removeEventListener()
	 pEle.addEventListener("click", function( ) {
	 	this.style.display = "none";
	 });	 
	 document.body.appendChild(pEle);	 
  } // for
 </script>

* DOM : ๋ฌธ์„œ๋ฅผ ๊ฐ์ฒดํ™”์‹œํ‚ค๋Š” ๊ฒƒ (์†์„ฑ ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์„œ)

  ex) document.createElement("p") -> ์š”์†Œ ์ƒ์„ฑ DOM ๋ฉ”์„œ๋“œ

-jquery-

<script>
  // jquery method :  body.append( p ),    p.appendTo(body)
  for (var i = 1; i <= 10 ; i++) {
  $("<p></p>")
    .text( "์ƒ์„ฑ๋œ p - " + i)
    .css("border", "1px solid red")
    .click( function (){
      $(this).hide();
    })
    .appendTo($("body"));
  } // for
 </script>

* append ์ข…๋ฅ˜ ๋‘๊ฐ€์ง€

  

 

3. select ํƒœ๊ทธ์—์„œ ๊ณผ๋ชฉ์„ ์„ ํƒํ•ด์„œ  ๋ผ๋””์˜ค๋ฒ„ํŠผ์˜ ์„ ํƒํ•œ ๊ณผ๋ชฉ์„ ์ฒดํฌํ•˜๋Š” js ์ฝ”๋”ฉ์„ ํ•˜์„ธ์š”

 <select id="selsubject" >
   <option>์„ ํƒํ•˜์„ธ์š”.</option>    
   <option value="kor">๊ตญ์–ด</option> 
   <option value="eng">์˜์–ด</option> 
   <option value="mat">์ˆ˜ํ•™</option>
   <option value="pe">์ฒด์œก</option> 
</select>
 <br>
 <input type="radio" name="subject"   value="kor"><label>๊ตญ์–ด</label>
 <input type="radio"  name="subject"  value="eng"><label>์˜์–ด</label>
 <input type="radio"  name="subject"  value="mat"><label>์ˆ˜ํ•™</label>
 <input type="radio"  name="subject"  value="pe"><label>์ฒด์œก</label>

-js-

 <script>
    document.getElementById("selsubject").onchange = function (){
    	// console.log( "์ด๋ฒคํŠธ ํ™•์ธ~" );
    	// alert(  this.selectedIndex );
    	// options ์ปฌ๋ ‰์…˜
    	var svalue = this.options[this.selectedIndex].value ;
    	// alert( this.options[this.selectedIndex].text );
    	// alert(  svalue );
    	if(svalue == "์„ ํƒํ•˜์„ธ์š”."){
    		alert("๊ณผ๋ชฉ๋งŒ ์„ ํƒํ•˜์„ธ์š”.");
    		return;
    	}
    	
    	var radios = document.getElementsByName("subject");
    	// alert( radios.length );
    	for (var i = 0; i < radios.length; i++) {
			if( radios[i].value ==  svalue ){
				radios[i].checked = true;
				break;   // return;
			} // if
		} // for
    	
    }
 </script>

-jquery-

 <script>
    $("#selsubject").change(function() {
    	 // var svalue =  $(this).val() ;              // "kor"
    	 
    	 // $("input[type=radio]")
    	 // jquery selector    -   :radio   
    	 // jquery method    -  each() 
    	 /*
    	 $(":radio").each(function(i, element) {
    	 	  if(  $(element).val() ==  svalue )  $(element).prop("checked", true);
    	 });
    	 */
    	 $(":radio[value="+  $(this).val()  +"]").prop("checked", true);
    	 
    });
 </script>

3-1. ๋ผ๋””์˜ค ๋ฒ„ํŠผ ์„ ํƒ -> select ์„ ํƒ

-js-

 <script>
     /*
     // document.getElementById("selsubject").options
     // children - DOM ๋ฉ”์„œ๋“œ 
     var ops = document.getElementById("selsubject").children;
     // alert( ops.length );
     // ops[4].setAttribute("selected", "selected");
     ops[4].selected = true;
     */
     
     var ops = document.getElementById("selsubject").children;
     
     var radioIndex = 0;
     var radios = document.getElementsByName("subject");
     // [๋ฌธ์ œ] index  
     //   ์™œ ?    4
    // let ํ‚ค์›Œ๋“œ / var ํ‚ค์›Œ๋“œ ์ฐจ์ด์  X		 
     //for (var i = 0; i < radios.length; i++) {  	 
     for (let i = 0; i < radios.length; i++) {	 
		// if( radios[i].checked ) radioIndex = i;
		radios[i].onclick = function (){
			 // alert( i + " /  " + this.value ) ;
			ops[i+1].selected = true;
		} // click
	} // for
	// alert( radioIndex  )  
 </script>

-jquery-

<script>
   // var opts =   $("#selsubject > option");
   $(":radio[name=subject]").click(function() {
   	     //  jquery method :  index()
   	     var idx =   $(":radio[name=subject]").index( this );
         // alert( idx );
         // ex01.html:48 Uncaught TypeError: $(...)[(idx + 1)].prop is not a function
         //$("#selsubject > option")[idx+1].prop("selected", true);
         $("#selsubject > option").eq(idx+1).prop("selected", true);
   });
</script>

5. <img src="../images/pic_bulboff.gif" alt="" id="bulb">

   ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ฆฌ๋ฉด ๋ถˆ์ด์ผœ์ง€๊ณ , ๋งˆ์šฐ์Šค๋ฅผ ๋‚ด๋ฆฌ๋ฉด ๋ถˆ์ด ๋„์ง€๋„๋ก js ์ฝ”๋”ฉํ•˜์„ธ์š”.

-js-

   var blub = d.g("bulb");
   blub.onmouseover = function (){
       this.src = "on.gif";
       event.srcElement = "on.gif";
   }
   blub.onmouseout = function (){
      this.src = "off.gif";
       event.srcElement = "off.gif";
   }

-jquery-

   $("#bulb").hover(
       function (){  // mouseover
           attr() / prop()
       }, 
       function (){  // mouseout
       } 
   );

๋ณ€์ˆ˜

[ js ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธ 4๊ฐ€์ง€ ๋ฐฉ๋ฒ• ]

    1)  var i;

    2)  let i; 

    3)  const i;

    4)  i=100;

    

 1. ๋ณ€์ˆ˜ ?   ๋ฐ์ดํ„ฐ  ์ €์žฅ ๊ณต๊ฐ„

 2. ์‹๋ณ„์ž(๋ณ€์ˆ˜) ์„ ์–ธ ํ˜•์‹   

    1) ๋ฌธ์ž, ์ˆซ์ž, _ , $ ํฌํ•จ๋  ์ˆ˜ ์žˆ๋‹ค.

    2) ์ˆซ์ž๋กœ ์‹œ์ž‘ X

    3) var $$$$;    X  ์™œ ?    jQuery(selector)   ==    $(selector)

    4) ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„ ํ•œ๋‹ค. 

    5) ์˜ˆ์•ฝ์–ด X     var _var;

 

- var ํ‚ค์›Œ๋“œ : 2015  ๊นŒ์ง€ js ์ฝ”๋”ฉ ์‚ฌ์šฉ

- let ํ‚ค์›Œ๋“œ  + const ํ‚ค์›Œ๋“œ : 2015( ES6 ) ์ดํ›„ ์ถ”๊ฐ€

 

- var ํ‚ค์›Œ๋“œ๋กœ ์„ ์–ธํ•œ ๋ณ€์ˆ˜๋Š” ์ค‘๋ณต ์„ ์–ธ O + ๊ฐ’ ์œ ์ง€

- let ํ‚ค์›Œ๋“œ๋กœ ์„ ์–ธํ•œ ๋ณ€์ˆ˜๋Š” ์ค‘๋ณต ์„ ์–ธ X

 

- var lastName =   '๋ฌธ์ž์—ด' ;

- z =   1 + "2";       =>    "12"

   z  = 1 + 2 + "3"       =>  3 +"3"  => "33"

- let $$ = 200;  ๊ฐ€๋Šฅํ•˜๋‹ค.  (jquery ๋•Œ๋ฌธ์— $์‚ฌ์šฉํ•˜์ง€๋ง์ž)


let ํ‚ค์›Œ๋“œ

  1.   let ๋กœ ์„ ์–ธ๋œ ๋ณ€์ˆ˜๋Š” ์žฌ์„ ์–ธํ•  ์ˆ˜ ์—†๋‹ค.

  2.  let ๋กœ ์„ ์–ธ๋œ ๋ณ€์ˆ˜๋Š” ์‚ฌ์šฉํ•˜๊ธฐ ์ „์— ์„ ์–ธํ•ด์•ผ ๋œ๋‹ค. 

  3. let๋กœ ์„ ์–ธ๋œ ๋ณ€์ˆ˜๋Š”     ๊ธ€๋กœ๋ฒŒ ๋ฒ”์œ„, ํ•จ์ˆ˜ ๋ฒ”์œ„  + ๋ธ”๋ก๋ฒ”์œ„

      var                             ๊ธ€๋กœ๋ฒŒ ๋ฒ”์œ„, ํ•จ์ˆ˜ ๋ฒ”์œ„

// Global Scope( ์ „์—ญ๋ณ€์ˆ˜ )
     var x ;
     
     function test(){
    	 // Function Scope ( ์ง€์—ญ๋ณ€์ˆ˜ )
    	 var y;
 
    	 // Block Scope
    	 {
    		 let z ;
    	 }	 
     }

*ํ˜ธ์ด์ŠคํŒ… : ๋ธ”๋Ÿญ ๋งจ ์œ„๋กœ ์„ ์–ธ๋œ ์ฝ”๋”ฉ์ด ์˜ฌ๋ผ๊ฐ (var O let X)


const ์ƒ์ˆ˜

    1. ์žฌ์„ ์–ธ ํ•  ์ˆ˜ ์—†๋‹ค. 

    2. ์žฌํ• ๋‹น ํ•  ์ˆ˜ ์—†๋‹ค. 

    3. ๋ธ”๋ก๋ชจ๋“œ( block scope ) O

    

    [ js  ์—์„œ const ํ‚ค์›Œ๋“œ ์‚ฌ์šฉ ? ]

    ํ•ญ์ƒ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋Š” .....

    const array

    const object

    const function

    const RegExp

 

*typeof

var data;  // [ undefined ]
data = 10;   // ์ •์ˆ˜ [ number ]
data = 3.14; // ์‹ค์ˆ˜ [ number ]
data = "admin"; //  ๋ฌธ์ž์—ด [ string]
data = true;      //            [ boolean ]
data = [];           // [] == js ๋ฐฐ์—ด  [ object]
data = {};           // {} == js ๊ฐ์ฒด(Object) [ object]  
data = function (){};  // js ํ•จ์ˆ˜  [ function ]
data = 'a';             // js char X     [ string ]

// typeof ์—ฐ์‚ฐ์ž
alert( typeof ( data ));

[ js ์—ฐ์‚ฐ์ž ]

   1. ์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž.

   2. ํ• ๋‹น(๋Œ€์ž…) ์—ฐ์‚ฐ์ž.

   3. ๋น„๊ต ์—ฐ์‚ฐ์ž

   4. ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž

   5. ์กฐ๊ฑด ์—ฐ์‚ฐ์ž        ?:

   6. ์œ ํ˜• ์—ฐ์‚ฐ์ž 

<script>
     // ์ฆ๊ฐ์—ฐ์‚ฐ์ž      ++   --
     
     // ๋ฌธ์ž์—ด ์—ฐ๊ฒฐ์—ฐ์‚ฐ์ž  +                 "ํ™๊ธธ๋™" + "๋‹˜"
  
</script>

<script>
   // type(์œ ํ˜•) ์—ฐ์‚ฐ์ž
   // typeof (10)   number
   
   //  instanceof ์—ฐ์‚ฐ์ž
</script>

<script>
   // &&   ||   !
   /*
   console.log(  true  &&   true);
   console.log(  true  ||   true);
   console.log(  !true  );
   */
   // js ๋น„ํŠธ ์—ฐ์‚ฐ์ž :  &  |  ^ ~  ,                             <<    >>    >>>  
</script>

<script>
   /*
   console.log(   3  ==  5  );
            console.log(   3  ===  5  );  // euqal   value + type  ํƒ€์ž…๊นŒ์ง€ ๋น„๊ตํ•˜๋Š” ์—ฐ์‚ฐ์ž.
   console.log(   3  !=  5  );
            console.log(   3  !==  5  );   // not equal  value + type
   console.log(   3  >  5  );
   console.log(   3  <  5  );
   console.log(   3  >=  5  );
   console.log(   3  <=  5  );
   */
   // ===
   // !==
   //	 ? :    ์‚ผํ•ญ(์กฐ๊ฑด) ์—ฐ์‚ฐ์ž
</script>

<script>
   /*
    var x = 5;   //  =  ํ• ๋‹น ์—ฐ์‚ฐ์ž
    x += 5;     // +=  ๋ณตํ•ฉ ๋Œ€์ž… ์—ฐ์‚ฐ์ž
    x -= 5;
    x *= 5;
    x /= 5;
    x %= 5;
    x **= 5;     ๋ˆ„์Šน(power)
    */
</script>
<script>
    /*
    console.log(  3 + 5  );  // ๋ง์…ˆ ์—ฐ์‚ฐ์ž   8
    console.log(  3 - 5  );  // ๋บ„์…ˆ ์—ฐ์‚ฐ์ž   -2
    console.log(  3 * 5  );  // ๊ณฑ์…ˆ ์—ฐ์‚ฐ์ž   15
    console.log(  3 ** 5  );  // Math.pow(3,5)  ๋ˆ„์Šน ์—ฐ์‚ฐ์ž
    // console.log(  3 / 0  );  // ๋‚˜๋ˆ—์…ˆ ์—ฐ์‚ฐ์ž   0.6
    // ์ •์ˆ˜ / 0 Infinity(๋ฌดํ•œ๋Œ€)
    console.log(  3.1 / 0  );  // ๋‚˜๋ˆ—์…ˆ ์—ฐ์‚ฐ์ž   0.6
    // ์‹ค์ˆ˜ / 0 Infinity(๋ฌดํ•œ๋Œ€)
    
    // console.log(  3 % 5  );  // ๋‚˜๋จธ์ง€ ์—ฐ์‚ฐ์ž  3
    // console.log(  3 % 0  );  // NaN ( == Not a Number )
    */
</script>

์ž๋ฃŒํ˜•( data type)

  [ typeof ์—ฐ์‚ฐ์ž ]

  1.  number

  2. string 

  3. boolean

  4. function 

  5. object  - js array,  js object

  

  js ํƒ€์ž…(์œ ํ˜•)์€  ๋™์  ์œ ํ˜•์ด๋‹ค.  

    var x;         // typeof    undefined
    x = 5;          //        "          number
    x = "admin"; //      "           string
    x = [] ;           //                object
    x = function (){}  //       function 
    
    
    [์ง€์ˆ˜ ํ‘œ๊ธฐ๋ฒ•]
    let y  =  123e5;     //12300000;
     y = 123e-5;          //0.00123
     
     [js  ์ •์ˆ˜,์‹ค์ˆ˜ = number]
     let z = 100;
     z = 3.14;
     
     
     [typeof ์—ฐ์‚ฐ์ž]
     
     console.log(   typeof   100 );
     console.log(   typeof   (100) );
     
     
     var xx;         // undefined
     var xx = "";  // string
// js ๋ฐฐ์—ด   -              ๋Œ€๊ด„ํ˜ธ   []
   // let m = [ 1,2,3 ];
   
   /* 
   let m = [];
   m[0]=1;
   m[1]=2;
    m[2]=3;
    */
    
// js ๊ฐ์ฒด -    ์ค‘๊ด„ํ˜ธ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.  {}
    let p1 = { 
    		           name:"admin"
    		           , age:20 
    		     };
    console.log( p1.name );
    console.log(  p1["age"]);

   [ ํ‚ค๋ณด๋“œ ๊ด€๋ จ ์ด๋ฒคํŠธ ]

   1. keydown ์ด๋ฒคํŠธ   :  ํ‚ค๋ณด๋“œ๋ฅผ ๋ˆ„๋ฅผ ๋•Œ   Ctrl, F1 ์ธ์‹ O, ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„ X, ํ‚ค๋ณด๋“œ ์ทจ์†Œ ๊ฐ€๋Šฅ

   2. keypress ์ด๋ฒคํŠธ  :  ํ‚ค๋ณด๋“œ๋ฅผ ๋ˆ„๋ฅผ ๋•Œ   Ctrl, F1 ์ธ์‹ X, ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„ O, ํ‚ค๋ณด๋“œ ์ทจ์†Œ ๊ฐ€๋Šฅ

   3. keyup ์ด๋ฒคํŠธ      :  ํ‚ค๋ณด๋“œ ๋†“์„ ๋•Œ

<style>
  *{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }
  
  /* css ์„ ํƒ์ž */
  input[type=text]{
     border: 1px solid grey;
     padding: 5px;
     font-size: 20px;
     margin:10px;
     width:90%;
  }
  
  /* ํŠน์ •์ƒํƒœ ,   :์˜์‚ฌํด๋ž˜์Šค */
  input[type=text]:focus{
     background-color: yellow;
  }
</style>
<!-- autofocus="autofocus" -->
<input type="text"  id="txt01"  tabindex="1"  onkeyup="txt01_keyup();">
<br>
<input type="text"  id="txt02"  tabindex="2">
<script>
    // global scope
    var txtbox01 ; 
    let  txtbox02;

     window.onload = function (){
    	 // ์ดˆ๊ธฐํ™”
    	 // function scope
    	 // var txtbox01 = document.getElementById("txt01");    	 
    	 txtbox01 = document.getElementById("txt01");
    	 txtbox02 = document.getElementById("txt02");
    	 
    	 txtbox01.focus();
    	 
    	 // focus  : ์ดˆ์ ์„ ๋งž์ถœ ๋•Œ ์ผ์–ด๋‚˜๋Š” ์ด๋ฒคํŠธ 
    	 // blur    : ์ดˆ์ ์„ ์žƒ์„ ๋•Œ      "
     }
     
     function txt01_keyup(){
    	 /*
		 // ์ด๋ฒคํŠธ ์ •๋ณด :  event ๊ฐ์ฒด 
		 // event.srcElement ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฐ์ฒด
		 // console.log( event.type ); // "keyup"		 
		 let uniCode = event.keyCode ;
		 txtbox02.value = uniCode + "(" + String.fromCharCode(uniCode)  +")";
		 */
		 
		 // ์ž…๋ ฅ์„ ๋๋‚ธ ํ›„ ์—”ํ„ฐํ‚ค๋ฅผ ๋ˆ„๋ฅผ ๋•Œ....  
		 if (  event.keyCode  == 13 ) {
			 txtbox02.value =  txtbox01.value;
		} // if
	 
	 } // txt01_keyup
     
</script>

ํ•ญ์˜ ๊ฐฏ์ˆ˜ ์„ ํƒ 

<select id="count">
   <!-- option[value=$]*15>{$} -->
</select>

ใ„ด ๋™์ ์ถ”๊ฐ€

 

-js-

    // selectIndex ์†์„ฑ
    // options ์ปฌ๋ ‰์…˜
    // options[selctedIndex].value
    // options[selctedIndex].text
    // new ์—ฐ์‚ฐ์ž
    // Option ๊ฐ์ฒด ( text, value)
    var count =  document.getElementById("count");
    count.options[0] = new Option("์„ ํƒํ•˜์„ธ์š”.", 0);
    
    for (let i = 1; i <=15; i++) {
    	count.options[i] = new Option(i, i);
	}
    count.options[10].selected  = true;   // setAttribute("selected", "selected")

-jquery-

   $("#count").append(  $("<option value='0'>์„ ํƒํ•˜์„ธ์š”.</option>") );
   for (let i = 1; i <=15; i++) {
	   $("#count").append(  $("<option value='"+i+"'>"+i+"</option>") );
	} // for
	$("#count option").eq(15).prop("selected", true);

ํŒ€์› ์ด๋ฆ„ ์ž…๋ ฅ 

<input type="text"  id="name" name="name" autofocus="autofocus" >
  <!-- onkeydown="name_keydown();" -->
<br>
<div  id="demo">
</div>

ใ„ด ๋™์ ์ถ”๊ฐ€

 

-js-

<script>
   function name_keydown(){
	   var demo = document.getElementById("demo");
	   
	   if( event.keyCode == 13 ){  // ์—”ํ„ฐ ์น  ๋•Œ
		   var name = document.getElementById("name");
	   
		   // 1.
		   // demo.innerHTML += "<input type='checkbox' value='"+ name.value+"'>" + name.value +"<br>";
		   
		   // 2. DOM ์š”์†Œ ์ƒ์„ฑ ์ถ”๊ฐ€
		   var ckb = document.createElement("input");  // <input>
		   ckb.setAttribute("type", "checkbox"); // <input type='checkbox'>
		   ckb.setAttribute("value", name.value); // <input type='checkbox'  value='์—„ํƒœํ˜'>
		   demo.appendChild(ckb);
		   
		   var textnode = document.createTextNode( name.value );
		   demo.appendChild(textnode);
		   
		   var br = document.createElement("br"); 
		   demo.appendChild(  br  );
		   
		   name.value = "";
		   name.focus();
	   } // if
   } // function
</script>

 

-jquery-

<script>
   $("#name").keydown(function() {
   	    if( event.keyCode == 13 ){
   	    	var value = $(this).val();
   	    	
   	    	//var content = "<input type='checkbox' value='"+ value +"'>" + value +"<br>"; 
   	    	//$("#demo").append($(content));
   	    	
   	    	var $ckb = $("<input>").attr({
   	    		type:"checkbox",
   	    		value:value
   	    	})
   	    	
   	    	var $text = $("<lable>"+  value +"</label>");
   	    	
   	    	/*
   	    	$("#demo")
   	    	    .append($ckb)
   	    	    .append($text)   	    	    
   	    	    .append($("<br>"));
   	    	*/
   	    	$("#demo").append($ckb, $text, "<br>");
   	    	
   	    	$("#name")
   	    	      //.val("")
   	    	      .select()
   	    	      .focus();
   	    } // if
   });
</script>
  • ๋„ค์ด๋ฒ„ ๋ธ”๋Ÿฌ๊ทธ ๊ณต์œ ํ•˜๊ธฐ
  • ๋„ค์ด๋ฒ„ ๋ฐด๋“œ์— ๊ณต์œ ํ•˜๊ธฐ
  • ํŽ˜์ด์Šค๋ถ ๊ณต์œ ํ•˜๊ธฐ
  • ์นด์นด์˜ค์Šคํ† ๋ฆฌ ๊ณต์œ ํ•˜๊ธฐ