A man was rushed to hospital after a mid-air emergency on a Sri Lanka-bound flight which was diverted to Perth last night.

The man, who is understood to be in his 50s, was on Sri Lankan Airlines flight ALK605 from Melbourne to Colombo when the medical emergency unfolded.

The flight was diverted to Perth Airport and St John Ambulance crews were on standby for the manís arrival when the plane landed about 7.05pm.

He was taken to Royal Perth Hospital on priority conditions and was in a critical condition last night. However, his condition has since improved and he is in a stable condition this afternoon.

A Perth Airport spokeswoman said the aircraft refuelled and departed Perth at 8.48pm.

The Airbus A330 landed in Colombo at 1.17am local time, two hours and 42 minutes later than scheduled.