2009-08-17 4 views
1

안녕하세요 여러분, 저는 뭔가 작업하고 있습니다. 텍스트 상자 요소 값을 클릭하면됩니다. 유일한 문제는 ID가 없다는 것입니다.Mootools : 클릭 된 요소 값 가져 오기

내 HTML 코드 :

<ul id="textbox"> 
    <li><input type="text" value="test1" name="chosen" disabled="disabled" /></li> 
    <li><input type="text" value="test2" name="chosen" disabled="disabled" /></li> 
    <li><input type="text" value="test3" name="chosen" disabled="disabled" /></li> 
    <li><input type="text" value="test4" name="chosen" disabled="disabled" /></li> 
</ul> 

내 Mootools의 코드 :

window.addEvent('domready', function() { 

    var el = $('textbox'); 

}); 

내가 TEST1을 경고 할 첫 번째 텍스트 상자를 클릭합니다. 내가 두 번째를 클릭하면 내가 경고 할 TEST2

나는 텍스트 상자에 ID 년대를 추가 생각했지만, 텍스트 상자가 변수입니다 ... 미리

감사합니다 .. 모든

답변

2

첫째, 당신은 문제가있다. 비활성화 된 양식 요소는 DOM 이벤트를 발생시키지 않으므로이를 처리 할 방법을 찾아야합니다.

둘째로, 질문에. MooTools has a selector 당신이 원하는 것을 할 수 있습니다. 나는 당신이 당신의 입력에서 disabled="disabled"을 제거하지 않는

var el = $('textbox'); 
el.getElements('input[name=chosen]').addEvents({ 
    'click': function() 
    { 
     alert(this.value); 
    } 
}); 

다시 말하지만,이 작동하지 않습니다 (내가 더 Mootools의 전문가는 아니지만) 아래의 미리보기가 작동합니다 생각합니다.

+0

피터 : 왜 장애가 있어도 작동합니다. 화면에서 시각적으로 변경하지는 않지만 요소에 대한 맞춤형 클릭 이벤트를 만드는 경우에도 사용할 수 있습니다. 내가 바꾸는 것은 this.value -> this.get ("value") (모범 사례로 문자열 프로토 타입을 사용할 수 있음) 및 선택기를 놓을 때 변수가 달라지기 전에는 getElements ("input")로 유지할 수 있습니다. –

+0

@Dimitar - 혼란 스럽네요 - DOM 이벤트가 비활성화 된 양식 요소에서 발생한다고 말하는거야? 그건 사실이 아니기 때문에. 간단한 테스트를 통해 자신을 볼 것을 권장합니다. '. 물론, 이벤트 리스너를 등록 할 수는 있지만, 결코 이러한 이벤트가 DOM에 전달되지 않으므로 결코 실행되지 않습니다. –

+0

hrm - 당신은 정확합니다, 나는 그것을 몰랐습니다. –