JSFiddle - React, Tailwind, and code Playground

HTML

<select id="test">
    <option value="0"></option>
    <option value="1">foo?</option>
    <option value="2">bar!</option>
</select>

JavaScript

var clickypoo = function () {
    var oThis = {
        m_rs: {
            RecordCount: 1,
            Fields: function(str) {
                return {
                    Name: "SourceOfWealth",
                    OriginalValue: null,
                    Type: 200,
                    Status: 0,
                    Value: ""
                }
            },
            MoveFirst: function() { return; }
        }
    }
    var fieldName = 'SourceOfWealth';
    var fieldValue = this.value;
    console.log(fieldValue);
    try {
        if (oThis.m_rs == null) {
            alert('NULL recordet: SetField("' + fieldName + '")');
            return;
        } else if (oThis.m_rs.RecordCount == 0) {
            FormsJSAPI_AddRow(oThis);
        }

        oThis.m_rs.MoveFirst();
        try {
            if (oThis.m_rs.Fields(fieldName).Type == 129 ||
                oThis.m_rs.Fields(fieldName).Type == 200 ||
                oThis.m_rs.Fields(fieldName).Type == 201) {
                oThis.m_rs.Fields(fieldName).Value = 
                    fieldValue.substr(0, oThis.m_rs.Fields(fieldName).DefinedSize);
            } else if (oThis.m_rs.Fields(fieldName).Type == 135 ||
                       oThis.m_rs.Fields(fieldName).Type == 72) {
                oThis.m_rs.Fields(fieldName).Value = fieldValue;
            } else {
                oThis.m_rs.Fields(fieldName).Value = fieldValue;
            }
        } catch (err) {
            oThis.m_rs.Fields(fieldName).Value = null;
        }
        oThis.m_bModified = true;
    } catch (err) {
        alert('SetField("' + fieldName + '"):' + err.description);
    }
}

var select = document.getElementById('test');
select.onclick = clickypoo;
select.onchange = clickypoo;