Boris Johnson has lost his third attempt to get a pre-Christmas general election after Labour MPs refused to give the plan the backing it needed.
The House of Commons voted by 299 to 70 for a December 12 election, well short of the two-thirds majority required under the law.
The latest government defeat followed Jeremy Corbyn’s decision to whip his MPs to abstain on the motion tabled by the prime minister.
However, the PM was set to table a new bill on Tuesday to change the rules to lower the bar for an election so he needs just 51% of MPs to go ahead.
Under the Fixed Term Parliaments Act, at least 434 out of the Commons’ 650 MPs are needed to trigger an early general election before the current set date of May 5, 2022.
Johnson had tried twice before to get a snap election and was defeated both times by a similar cross-party refusal to grant the support he needed.
His hopes of holding a polling day this year now rely on whether opposition parties support a fresh attempt to bypass current legislation.
The PM is now expected to produce a one-line bill on Tuesday that would need only 51% of MPs to spark an election.
The Liberal Democrats and the SNP have joined forces in recent days to suggest they would back new legislation to spark a December 9 election in a bid to avoid a no-deal Brexit or Johnson’s Brexit getting approval.
During the debate, Johnson said Corbyn has “run out of excuses” to not support a general election.
“He can run, but he cannot hide forever. Across parliament, his supposed allies are deserting him. The SNP, I now read, are in favour of an election, and the Lib Dems are in favour of an election.”
Corbyn hit back with a string of his own conditions for agreeing to any early election.
He said: “When no-deal is off the table, when the date for an election can be fixed in law, and when we can ensure students are not being disenfranchised, we will back an election so this country can get the government it needs.”