2009-06-03 4 views
0

jQuery에 typeWatch 플러그인을 사용하려고합니다.jQuery로 입력 필드 텍스트에 액세스하려면 어떻게해야합니까?

<script type="text/javascript"> 
$(document).ready(function() { 
    var options = { 
     callback: function() { alert("a-ok! " + $(this).text); }, 
     wait: 333, 
     highlight: true, 
     captureLength: 1 
    } 

    $("#customer").typeWatch(options); 
}); 
</script> 

그리고 내보기의 HTML이있다 : 나는 텍스트 상자에 "ABC"를 입력하면,이 테스트로

Method B: <%= Html.TextBox("customer") %> 

을, I "가 함께 팝업에게 경고를 기대하고 나는이 자바 스크립트를 -ok! ABC ". 나는 $ (이)는 .text가 .val을 변경하려고했습니다

a-ok! function (F) { 
    if (typeof F !== "object" && F != null) { 
     return this.empty().append((this[0] && this[0].ownerDocument || 
       document).createTextNode(F)); 
    } 
    var E = ""; 
    o.each(F || this, function() {o.each(this.childNodes, function() { 
      if (this.nodeType != 8) { 
      E += this.nodeType != 1 ? this.nodeValue : o.fn.text([this]);}});}); 
    return E; 
} 

대신 다음은 ... 나타나, 나는 또한 더 직접적으로 $ ("# 고객"로 입력 필드를 참조하려고했습니다) 그러나 그들은 유사한 결과를 산출한다. 입력 한 텍스트에 어떻게 액세스 할 수 있습니까?

+0

펑션을 사용하여 함수를 호출하지 않기 때문에 함수의 텍스트 표현을 다시 얻는 이유는 ... 텍스트는 텍스트 여야합니다. ***() *** – cgp

+0

대답 할 수 없습니다. : ( – cgp

답변

1

옵션에서. 따라서 사용하는 콜백 함수에 매개 변수를 추가하기 만하면 해당 매개 변수가 입력 텍스트가됩니다.

+0

sweet! 감사! 나는 4 명의 사람들이 빨리 upvoted 그러나 아무것도 작동하지 않았기 때문에 다른 답변의 다른 변형을 계속 노력했다. 이것은 매력처럼 작동했습니다. –

5

당신은 텍스트 상자에 발() 함수를 사용한다 :

function checkElement(timer, override) { 
     var elTxt = jQuery(timer.el).val(); <----------- !!! this... 

     // Fire if text > options.captureLength AND text != saved txt OR if override AND text > options.captureLength 
     if ((elTxt.length > options.captureLength && elTxt.toUpperCase() != timer.text) 
     || (override && elTxt.length > options.captureLength)) { 
      timer.text = elTxt.toUpperCase(); 
      timer.cb(elTxt); <-------------- !!! ...goes here. 
     } 
    }; 

timer.cb 사용자가 설정 한 콜백입니다 :이 발견 typeWatch 버전 2.0의 코드를 찾고

$(this).val(); 
+0

나는 이것이 일반적으로 정답이라고 생각하지만 루카스가 내 문제를 해결 한 이래로 그는 대답을 얻었지만 정답이 아마 99 % –

+0

루카스가이 직업을 위해 typeWatch 전문가가 필요했습니다.). 당신이 내 - 기억해 - 팁 : $ (elem) .val() .text! (모든 HTML 입력 필드에서 작동) hehe – Ropstah

관련 문제