2013-06-21 2 views
0

jquery를 사용하여 검색 가능한 콤보 상자에서 드롭 다운을 변환하려고합니다. 아래 코드는 나를 위해 잘 작동하지만 onkeypress 이벤트, onchange 이벤트, id, name, maxlength 속성 값을 동적으로 설정해야합니다.jquery를 사용하여 콤보 박스를 생성하는 동안 속성을 동적으로 설정하는 방법

(function($) { 
    $.widget("ui.combobox", { 
    _create: function() { 
     var input, 
     that = this, 
     wasOpen = false, 
     select = this.element.hide(), 
     selected = select.children(":selected"), 
     value = selected.val() ? selected.val() : "", 
     wrapper = this.wrapper = $("<span>").insertAfter(select); 

     input = $("<input>") 
      .appendTo(wrapper).val(value).attr("title", "") 
      .attr("onchange","return pincodeValidation(this.value);") 
      .attr("onkeypress","return fnNotAlphabet(event);") 
      .attr("maxlength","6") 
      .attr("id","pinCode") 
      .attr("name","pinCode") 
      .autocomplete({// code for autocomplete}); 
     }); 
     })(jQuery); 

가 어떻게 동적으로 대신 직접 자바 스크립트를 변경할 파일 속성 이러한 요소를 설정할 수 있습니다 : 나는 콤보 상자를 만드는 jQuery 코드 아래 사용하고 ? 대신 ATTR를 사용

+0

왜 인라인 속성을 사용하여 이벤트를 설정하고 있습니까? 대신 jquery .on() 사용 –

+0

$ ("# pincode")와 같은 내 드롭 다운 ID에 combobox를 호출합니다. 여기서 pincode는 드롭 다운입니다. 위의 jquery – Anurag

답변

0

()는 당신이 도움이 .bind() 희망을 사용해야합니다

+1

bind() 또는 on()을 사용하여 dynamicaly로 생성 된 입력 요소 대신 드롭 다운 이벤트가 변경됩니다. 이제는 선호되는 버전입니다. –

0

나는 또한 같은 검색했지만, 내가 콤보 상자에서 항목의 선택에 때 onKeyPress 트리거 코드를 변경 낭포 soultion을 찾을 didnt는 .

$("#countryInput").combobox({ 
    select: function (event, ui) { 
     $("#countryInput").trigger('keypress'); 
} 
}); 
관련 문제