[SalesForce] How to get the ID of selected lookups in Javascript

I have a VF page based on an object. It has a lot of lookup relationships. When a lookup is selected for a certain field (let's say Market_c), I'd like to do some processing in Javascript. How do I hook an existing apex:inputfield tag to a javascript function? And once in the Javascript function, how do I get the value of the selected Market_c.

I've tried hooking up onchange event, but it simply does not fire.

Best Answer

<script>
function doSomething() {
    // use '_lkid' suffix to get the element containing the SF Id in value
    var lkfield = document.getElementById('{!$Component.fieldValue}_lkid');
    // lkfield.value now has the selected ID value
}
</script>
<!-- intervening code ommitted -->
<apex:inputField id="fieldValue" value="{!Record.Field}">
    <apex:actionSupport event="onchange" reRender="someArea" oncomplete="doSomething()"/>
</apex:inputField>