Expand a few comments. One as per Nikerabbit's comment on r59695.
[mediawiki.git] / skins / common / htmlform.js
blob77c83610caaa9a65d292a2b553531af41ff402a6
1 // Find select-or-other fields.
2 addOnloadHook( function() {
3         var fields = getElementsByClassName( document, 'select', 'mw-htmlform-select-or-other' );
4         
5         for( var i = 0; i < fields.length; i++ ) {
6                 var select = fields[i];
7                 
8                 addHandler( select, 'change', htmlforms.selectOrOtherSelectChanged );
9                 
10                 // Use a fake 'e' to update it.
11                 htmlforms.selectOrOtherSelectChanged( { 'target': select } );
12         }
13 } );
15 var htmlforms = {
16         'selectOrOtherSelectChanged' : function(e) {
17                 var select;
18                 if (!e) e = window.event;
19                 if (e.target) select = e.target;
20                 else if (e.srcElement) select = e.srcElement;
21                 if (select.nodeType == 3) // defeat Safari bug
22                         select = select.parentNode;
23                 
24                 var id = select.id;
25                 var textbox = document.getElementById( id+'-other' );
26                 
27                 if (select.value == 'other') {
28                         textbox.disabled = false;
29                 } else {
30                         textbox.disabled = true;
31                 }
32         }