2009-05-05 5 views
3

저는 ASP.Net Webform에 jQuery 자동 완성 필드가 있으며 모든 것이 지금까지 훌륭하게 작동하고 있습니다. 또한 AutoPostBack을 사용하여 onSelectedIndexChanged를 실행해야하는 DropDownList가 있습니다.jQuery 자동 완성 AutoPostBack에 텍스트 손실

AutoPostBack을 수행하도록 코드를 변경하면 jQuery 자동 완성 기능이있는 텍스트 필드가 비어있게됩니다. 그러나 페이지의 소스를 보면 텍스트가 텍스트 필드에 있습니다. 양식을 게시하면 페이지에서 빈 필드가 다시 전송됩니다. 내 Google-Fu는 이것에 대한 약점이 있습니다. 해결 방법을 찾지 못했습니다.

AutoPostBack에서 자동 완성 필드가 공백으로 표시되는 문제가있는 사람이 있습니까? 어떻게 해결 되었습니까?

정말 필요한 경우 코드를 게시 할 수 있지만 회사 정책으로 인해 코드를 많이 작성해야합니다.

+0

당신이 viewstate가는 A를 사용할 수있다 수행 utocomplete textbox? –

+0

예, 있습니다. (뒤로 갔다가 확실하게 확인되었지만, 공백으로 채워지는 것은 자동 완성 상자뿐입니다. 다른 모든 필드는 문제가 없습니다.) – Moose

답변

1

자동 완성 필드가 초기화되는 방식은 무엇입니까? 서버에서 페이지를로드 할 때 또는 document.ready의 자동 완성 jQuery 플러그인에서 빈 문자열로 설정되어 있습니까?

플러그인의 소스 코드가 document.ready 빈 문자열로 텍스트 상자를 설정하는 것입니다 경우 다음을 시도해보십시오 : $ ID :

// Store current textbox value in a var 
var temp = $('#mytextbox').val(); 

// Initialize the autocomplete plugin (winging it on the syntax) 
$('#mytextbox').autocomplete(); 

// Reset the value of the textbox. 
$('#mytextbox').val(temp); 
+0

document.ready의 플러그인에 의해 빈 문자열로 설정되고 있다고 생각합니다. 나는 내 앞에 코드가 없지만 페이지로드에 다시 설정하는 것이 없다고 확신합니다. 필자는 자동 완성 문서에서 필드를 초기화하는 것에 대해 아무것도 기억하지 못합니다. – Moose

+0

제가 생각하기에, 가능한 경우 플러그인의 소스 코드를 살펴보십시오. –

+0

그 경우 내 게시물에 편집 위의 자바 스크립트/jquery 코드를 시도하십시오. –

0

당신은 jQuery를 자동 완성 플러그인 1.1, * 개정을 사용하는 경우 : 30 : 옵션 예에서 : 27Z joern.zaefferer $

추가 "거짓, autoPostBackSelection"

$.Autocompleter.defaults = { 
    inputClass: "ac_input", 
    resultsClass: "ac_results", 
    loadingClass: "ac_loading", 
    minChars: 1, 
    delay: 400, 
    autoPostBackSelection: false, 
    ... 

, 광고 후 15 2009-08-22 10 jquery.autocomplete.js 이 "직전의 진실"; 은 "selectCurrent() 함수의 끝에

if (options.autoPostBackSelection == true) { 
     __doPostBack($input.id, ""); 
     } 

예 :.

selectCurrent 함수() {... 경우 (참의 options.autoPostBackSelection == ) { __doPostBack ($ input.id, ""); 사실 } 반환; }