조언 부탁드려요

조언 부탁드려요

QA

조언 부탁드려요

본문

  <div class="keyword_textbox">
   <input type="text" name="s_keyword" id="s_keyword" placeholder="<?=ow_?>style="width:98%; height:43px; font-size:14px; border:1px solid #FFFFFF; padding-left:10px;" autocomplete="off">
   <div class="keyword_listbox" style="display:none;">
    <div class="keyword_nameslist"></div>
   </div>
  </div>

 

<script>
<?php
$form_id = "s_keyword";
?>
$(document).ready(function() {
 $('.keyword_listbox').hide();
 $('#<?=$form_id?>').keyup(function () {
  var uid = $('#<?=$form_id?>').val();
  var data='ct_str='+uid;
  $.ajax({
   type:"POST",
   url:"<?=OW_;?>",
   data:data,
   success:function(html) {
    if(html)
    {
     $('.keyword_listbox').show();
     $('.keyword_nameslist').html(html);

     $('li').hover(function(){
      $(this).addClass('keyword_hover');
     },function(){
      $(this).removeClass('keyword_hover');
     });

     $('li').click(function(){
      $('#<?=$form_id?>').val($(this).text());
      $('.keyword_listbox').hide();
     });
    }
    else
    {
     $('.keyword_listbox').hide();
    }
   }
  });
 return false;
 });
});
</script>

 

여기서


 위 소스에서 ↓ 누르면 포커스가  <li>1<li>

↓  한번 더 누르면 <li>2<li>

 ↓  또누르면 <li>3<li> 이게 하고

 ↑누르면 다시<li>2<li>

다시또누르면 <li>1<li> 하는 방법이있나요  

 

<div class="keyword_nameslist">

안에 디비에서 가져온 것들을뿌려주는 거 같은데

</div>

여기 를 키보드 상하 버턴으로 선택 하고 엔터를 누르면 그 선택 값이

 <input type="text" name="s_keyword" id="s_keyword" 안에 들어가는 방법이 있나해서요

 

이 질문에 댓글 쓰기 :

답변 2

<input type="text" name="s_keyword" id="s_keyword" > 

<ul id="keyword_nameslist">

 <li>1</li>

 <li>2</li>

 <li>3</li>

 <li>4</li>

 <li>5</li>

 <li>6</li>

</ul>

 

<script>

var i = -1, obj = $('#keyword_nameslist li');

$('#s_keyword').on('keydown',  function(e) {

    switch(e.which) {

        case 38: // up

i = (--i) % 6;

obj.removeClass('active');

obj.eq(i).addClass('active'); 

break;

case 40: // down

i = (++i) % 6;

obj.removeClass('active');

obj.eq(i).addClass('active'); 

break;

case 13:

$(this).val(obj.eq(i).text());

break;

    }

});

</script>

 

<style>

.active{ border: 1px solid red}

</style>


먼 가 제가 잘못하고있는게 있는 가보네요

 

        case 38: // up

i = (--i) % 6;

"여기까지는 되는데

아래 두문장 이 안되는 거같네요

 

obj.removeClass('active');

obj.eq(i).addClass('active');  

답변을 작성하시기 전에 로그인 해주세요.
전체 33
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT