document.observe('dom:loaded',function(){
$$('select.combo').each(function(elm){
var s = elm.options.selectedIndex;
if(Prototype.Browser.IE) {
var optn = document.createElement("OPTION");
optn.text = 'Other...';
optn.value = 'Other...';
elm.options.add(optn, elm.options.length);
}else elm.insert('<option value="Other...">Other...</option>');
elm.options.selectedIndex = s;
});
});
document.observe('change', function(e) {
var elm = e.element();
if ($F(elm) != 'Other...') return;
if (!elm._comboBackup)
elm._comboBackup = {};
var txt = new Element('input', {
type: 'text',
id: elm.id,
name: elm.name,
value: ''
}).setStyle({ width: elm.getWidth() + 'px' });
elm._comboBackup = elm.replace( txt );
txt.activate().observe('blur', function(e) {
var t = e.element();
if ($F(t) == '') {
t.replace(elm._comboBackup);
elm.options.selectedIndex = 0;
}
});
});