Johnson said lawmakers would have all the time between now and the dissolution of parliament to pore over the Brexit bill if they backed a 12 December general election in a vote on Monday.
Labour leader Jeremy Corbyn said his party wanted an election but the priority was avoiding a no-deal Brexit. He said the European Union needed to say whether it would grant a Brexit delay before he considers a snap vote.
"Take the no-deal off the table and we will absolutely support the election. I’ve been calling for an election ever since the last one because this country needs one in order to deal with all the social injustices but no-deal must be taken off the table," he said.
Liberal Democrat Jo Swinson accused Johnson of dangling an election in front of lawmakers to distract them from his failed attempt to take the United Kingdom out of the bloc "do or die, come what may."
"He is in a mess of his own making and while we still don’t have an extension from the EU we are not going to vote for an election while there still might be a risk of a no-deal Brexit," she told reporters.
If it so happens that the UK needs to have a general election, she added, Liberal Democrats "are up for the fight and we will make our message about stopping Brexit."
Nicola Sturgeon, the Scottish first minister and leader of the Scottish National Party, also suggested that the prime minister was trying to entice the parliament with the prospect of an election to get his own way.
"So Johnson appears to be saying to MPs ‘if you vote for an election, I’ll bring back my bad Brexit bill and try to drag us out of the EU before we go to the polls’. Elections should be exercises in letting voters decide, not devices for charlatans to get their own way," she wrote.
The European Union is expected to say whether it will grant an extension to Brexit by the end of this week. The British government asked for it to be pushed back to 31 January next year. The UK was to leave the union in a week.