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;
            }
        });
    });