1 // Find select-or-other fields.
2 addOnloadHook( function() {
3 var fields = getElementsByClassName( document, 'select', 'mw-htmlform-select-or-other' );
5 for( var i = 0; i < fields.length; i++ ) {
6 var select = fields[i];
8 addHandler( select, 'change', htmlforms.selectOrOtherSelectChanged );
10 // Use a fake 'e' to update it.
11 htmlforms.selectOrOtherSelectChanged( { 'target': select } );
16 'selectOrOtherSelectChanged' : function(e) {
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;
25 var textbox = document.getElementById( id+'-other' );
27 if (select.value == 'other') {
28 textbox.disabled = false;
30 textbox.disabled = true;