That's not usual to have this behavior.
That is actually the expected behavior when making manual requests using Inertia.
Inertia::post or Inertia::put both expect a Inertia response. Either a redirect, or a page object.
All requests made trough inertia, even through their form helper, actually expect an inertia response.
It is in their docs:
https://inertiajs.com/the-protocol#html-responses
If you are not returning anything explicit, an empty response is generated, and the laravel inertia adapter converts an empty response to a redirect->back() call, thus reloading the page:
It seems you want to make a POST/PUT request and decide in your JS code the behavior after a successful response without having inertia doing its magic for you.
This is fine in an inertia application, for example in user settings page where one want to save a checkbox state without reloading the page.
The recommendation, from the inertia docs is to do it manually, either by using axios, fetch, XMLHttpRequest:
https://inertiajs.com/forms#xhr-fetch-submissions
The idea of using inertia helpers is to have a SPA like application but using traditional server-side paradigms, such as server-side routing and validation.
What you seem to be wanting is to make an AJAX update, so the bottom line is that you need to handle this yourself outside of inertia.