RadzenDataFilter numeric input fixes #1843
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I wish there was a better way to fix these issues, but since the numeric input relies on the 'onchange' event and not on the 'oninput' event it's hard to come up with something. If there is a better way to force an input to 'commit' its changes into the 'onchange' event on demand, it'd be best to use it, but I am not aware of other solutions.
Resolving #1818
blurAllNumericInputs - this functions should be called from client's code right before you want to read RadzenDataFilter<>.ToFilterString();
Resolving #1842
Reference the new OnFilterOperatorChanged method (its logic was inlined before). The loss of values occurs at the
await InvokeAsync(ChangeState);
because the 'onchange' event of the corresponding numeric input has not committed and server-side DOM is not aware of user's input. Temporarily stashing the current input values and then restoring them resolves the issue. Other blurring techniques did not work in this case.