But now your client's validation doesn't match, unless you're going to go around and force all your clients to update. Maybe at gunpoint or something. Who knows.
Online games won't play unless at the latest patch level, for example.
if you need to do complicated validation why the heck are you doing it on the client? Just send it to the server
Because the user is using the application during a 2-hour period of having no access to the Internet.
and then let the server return an error
So your suggested workflow is just to let the user enter grossly invalid data for two hours then have the server present pages of error messages once a connection is reestablished.
Hence the growth of Node.