Thank you again for your reply!
I have changed Product Detail page to the code you provided. However, the option still not present the way I need but only shows no choice for each option. I set the first value of each option to "---" (meas please select), and inventory is 0. Somehow this value effect on how it present.
Furthermore, I changed the last line of your code to "And products.ProductLive" and it still not showing the available options combination products.