UK MPs have voted by 412 to 202 for Prime Minister Theresa May to ask the EU for a delay to Brexit.
It means the UK may not now leave on 29 March as previously planned.
Mrs May says Brexit could be delayed by three months, to 30 June, if MPs back her withdrawal deal in a vote next week.
If they reject her deal again then she says she will seek a longer extension – but any delay has to be agreed by the 27 other EU member states.
MPs earlier rejected an attempt to secure another Brexit referendum by 334 votes to 85.
And they also rejected a cross-party plan to allow MPs to take control of the Brexit process to hold a series of votes on the next steps by the narrow margin of two votes.
Following the votes, Labour leader Jeremy Corbyn reiterated his support for a further referendum after earlier ordering his MPs not to vote for one.
He said: “Today I reiterate my conviction that a deal can be agreed based on our alternative plan that can command support across the House.
“I also reiterate our support for a People’s Vote – not as a political point-scoring exercise but as a realistic option to break the deadlock.”
Labour abstained when MPs voted on the referendum proposal, tabled by Independent Group MP Sarah Wollaston, arguing that now was not the right time to push for a public vote.
Labour’s plan to delay Brexit to allow Parliamentary time for MPs to “find a majority for a different approach” was defeated by 318 to 302 votes.