Hi,
The variants list is ordered based on the order you have the characteristics in the product and the order of the values of each characteristic. If you want to change the order of the variants in that list, you'll want to change the order of the characteristics or values so that it is consistent.
We indeed added ajax capabilities to the add to cart system.
The issue with the refresh of the dropdown characteristics is that if we disable some values of the second dropdown when you select something in the first one and vice versa, then, there will be some variants that are available that you won't be able to select in some cases because the values have been disabled when you started selecting variants.
Suppose that you have two characteristics color and size with two values each (red and blue, and XL and L). By default red and XL are selected and there are only two variants: red/XL and blue/L
When you click on the size dropdown, it should display only the possible values for red (so only XL). And when you click on the color dropdown, it should display only the possible values for XL (so only red).
Thus in that configuration, it becomes impossible to select the other variant even though it is available and the dropdowns are dynamic. So it's not a problem of ajax, but of logic. Solving that case would require adding "please select" choices to the dropdowns where all the values would display in the other dropdowns, but then it changes the paradigm of HikaShop where there is a default variant selected and its data displayed by default on the product page. Which would lead to having to modify the characteristics management in the backend, the product page layouts, the CSV import, and that would also affect the way merchants were managing their HikaShop.
So just that would have huge implications. We're still trying to think of a solution that would work fine with the current implementation and thus not require changing all of that.