2011-08-12 7 views
4

YUI 2 및 YUI3의 onChange 함수에 대한 코드를 작성하는 방법. YUI에서YUI의 변경 사항

jQuery(':input[type=radio]').change(function(){ 

    var aType=jQuery(this).val(); 
    var numT= aType==1 ? "3" : "6" ; 
    var aWidth=aType==1 ? "330px" : "660px" ; 

}); 
+1

이 도움이 될 수 http://stackoverflow.com/questions/1215012/yui-3-programmatically-fire-change-event –

답변

8

3 (활성 개발 더 이상, 사용 YUI 3) YUI 2.9에서

Y.all('input[type=radio]').each(function (node) { 
    node.on('change', function() { 
     var val = this.get('value'); 
     ... 
    }); 
}); 

// or 
Y.all('input[type=radio]').on('change', function (e) { 
    var val = e.currentTarget.get('value'); 
    ... 
}); 

// typical implementations alias Event or Event.on and 
// Selector.query to shorter names 
YAHOO.util.Event.on(
    YAHOO.util.Selector.query('input[type=radio]'), 'change', function (e) { 
     var val = this.value; 
    ... 
}); 
+0

감사합니다! 하지만 JSFiddle에서이 경고를 시도했을 때 양쪽 값 1,2는 URL http://jsfiddle.net/wasim117/cEYBv/ –

+0

죄송합니다! 나는 결코 nodelist를 사용하지 않는다는 나의 규칙을 어겼다.() - 위반은 더 좋다. 두 값을 모두 얻은 이유는 노드 목록 구독에서 'this'는 이벤트를받은 개별 노드가 아니라 노드 목록입니다. e.currentTarget은 노드입니다. 코드 스 니펫을 업데이트했습니다. – Luke

+0

고맙습니다. 아직 2.9를 사용하고 있습니다. 솔루션이 잘 작동합니다! BTW. 또한 .on (..) 대신 .addListener (..)를 사용할 수 있습니다. – Kostanos

관련 문제