The JSON fragment you provided looks OK, but I'm guessing that something else is at play here. Is that all that you see in Firebug? Is there stuff further down the console if you scroll?
Do you have request debugging turned on in your application? If so, that will append a bunch of stuff to the response from child.cfm. Rather than use child.cfm. You can add <cfsetting showDebugOutput="no"> to the top of your page to suppress that. You might also want to move the function definition to be above the <cfif> block, and add <cfprocessingdirective suppressWhiteSpace = "yes"> to the top of the page and </processingdirective> to the bottom. You could also put <cfcontent reset="yes"> on the same line and immediately preceeding your <cfoutput> block.
I would also suggest you use <cfqueryparam> in your <cfquery> block to protect against potential SQL injection from the 'empcode' form variable (coming in from your AJAX POST call).
You might consider refactoring the child.cfm into a remote CFC. You could assign returntype="JSON" on the getempCode() function, which would eliminate the need for the SerializeJSON() call in your <cfreturn>.
Another thing - is the empCode supposed to be returned in scientific notation (or at least that is what "E-00001" appears to be)? If not, you might be falling prey to one of the known issues with SerializeJSON().
-Carl V.