The House-Senate joint meeting voted 358-2 to approved the amendment with 30 abstentions.
According to the law, the premier must present the bill for royal endorsement within 20 days.
Before the voting began at 10am, opposition chief whip Jurin Laksanawisit from Democrat Party and some senators proposed a debate on whether voting should be postponed, since the Constitution Court had now accepted their petition and decided to launch a review of two complaints related to the charter-amendment bill.
The bill is designed to turn the Senate into a fully elected upper chamber, and the opposition said that such a transformation is unconstitutional.
But MPs of Pheu Thai Party opposed any further debate and proposed to vote without further delay.
House Speaker Somsak Kiatsuranont then ordered voting to proceed.
Frustrated by the order, every Democrat MP and some appointed senators walked out of the chamber in protest.
Democrat MPs led by Attaporn Ponlaboot also placed a funeral wreath with a banner reading "slavery parliament" at the House Speaker podium before leaving.
The Democrat Party and the group of 40 senators later seperately submitted a letter to the President of the Senate Nikom Wairatpanij to forward their petition to Constitution Court to consider whether or not the voting on 3rd reading of charter amendment bill today is constitutional.