.replace() returns a new string (it does not modify the existing string) so you would need:
answer_form = answer_form.replace(/#/g, question_num);
You probably should also make question_num a string though auto type conversions probably handle that for you.
Working example: http://jsfiddle.net/jfriend00/4cAz5/
FYI, in Javascript, strings are immutable – an existing string is never modified. So any method which makes a modification to the string (like concat, replace, slice, substr, substring, toLowerCase, toUpperCase, etc…) ALWAYS returns a new string.