2015-01-08 4 views
0

이상한 문제의 비트 자동 완성 기능을 사용한 후 텍스트 상자를 사용하지 않도록 설정하고 싶습니다. 올바른 상자를 숨기고 새 상자를 표시하고 설정하여이 작업을 수행했습니다. 같은 값. 숨겨진jQuery 자동 입력 기능이있는 다른 텍스트 상자 채우기

첫 번째 텍스트 상자에 올바른 데이터를 가지고 있지만 내가 자동 완성, heres는 내 코드를 클릭하기 전에 두 번째는 지금까지 번호가 입력 보여주는 :

무엇을 보여줄 수있는 jsfiddle를 완료 내 말은, 숫자를 입력하고 26 번을 클릭하십시오.

http://jsfiddle.net/7wys1rtk/1/

HTML :

<form> 
Type Order Number:<br /> 
<input style='display:none;' class="jqueryShow" type='text' disabled/><input id='emailorderIDopen' class="jqueryHide" type='text' name="order" /><br /> 
<button id="sendemail" type="submit" class="btn btn-primary" disabled>Send Default Email</button> 
</form> 

JQuery와 :

$(function() { 

    var availableTags = ["26438"]; 

    //SET AUTO COMPLETE AND ACTIVATE SEARCH ON CLICK 
    $("#emailorderIDopen").autocomplete({ 
     source: availableTags, 
     select: function(event, ui) 
     { 
      $("#orderIDopen").val(ui.item.value); 
      $('#sendemail').removeAttr('disabled'); 
      $(".jqueryHide").hide(); 
      $(".jqueryShow").val($(".jqueryHide").val()); 
      $(".jqueryShow").show(); 

     } 

    }); 

}); 

답변

3

당신은 같이 $(".jqueryHide").val() 대신 .jqueryShow 요소로 전체 항목 값 인 ui.item.value을, 전달할 수 있습니다 입력 한 텍스트 만 포함됩니다.

$(".jqueryShow").val(ui.item.value); 

바이올린 포크 :

http://jsfiddle.net/dmfuryra/

는 편집 : 질문의 요약 :이 때문에 비동기 처리의 일이 일어나고 http://jsfiddle.net/dmfuryra/1/

+1

멋진 한 친구, 치료 :) :)! - 마지막 바이올린 : http://jsfiddle.net/dmfuryra/1/ –

0

는, 어떤 의미 때 $ ("jqueryShow.") .val ($ (". jqueryHide") .val()); val()은 사용자가 입력 한 값을 유지합니다.

$ (". jqueryShow")에 의해이를 극복 할 수 있습니다 .val (ui.item.value);

관련 문제