switch chat submit handler to .on style so it works even when dynamically rerendered