MPs last night voted overwhelmingly to ban smoking in cars when children are passengers – but there was immediate confusion about when it will come in.

Health charities said they were “delighted” after the Commons voted by 376 to 107 in favour of the measure, a huge majority of 269.

Labour backed the ban en masse and just four Liberal Democrats came out against a ban – easily defeating the 102 Conservatives who opposed it, on a free vote.

The ban represents a personal triumph for Alex Cunningham, Labour MP for Stockton North, who has led a three-year campaign for the legislation.

Mr Cunningham introduced his own private member’s Bill, warning that 300,000 UK children are taken to their GP with smoking-related illnesses every year.

One cigarette in the car - even with the window open - creates a greater concentration of second-hand smoke than a whole evening's smoke in a pub used to, research had found.

Back in 2011, David Cameron dismissed Mr Cunningham’s plea for action, saying he was “very nervous about going into what people do inside their car”.

But the prime minister was forced to offer his MPs a free vote after the House of Lords backed a ban last month, in the teeth of Government opposition.

However, the rapid turnaround means there is no date for introducing the ban – or even any indication of when that confusion will be cleared up.

The department of health (DH) stayed tight-lipped, health minister Jane Ellison telling MPs that discussion about a date was for “another day”.

There are also suggestions that the police oppose being asked to enforce another driving rule, one not directly linked to the safety of motorists.

But Dr Penny Woods, chief executive of the British Lung Foundation, was ecstatic, saying: “Having campaigned on this issue for many years, we're absolutely delighted.

“This could prove a great leap forward for the health of our nation's children. The onus is now on the Government to act accordingly and make this crucial child protection measure law at the earliest opportunity.”

Labour also called for quick action.

Health spokeswoman Luciana Berger said: “We will be watching closely to ensure the Government don't try and kick this into the long grass.”

Coalition MPs in the region were split on the controversy.

Ian Swales. Liberal Democrat MP for Redcar, backed the ban, despite a commitment to “legislate very sparingly on matters of personal freedom”.

He explained: “I have held discussions with local health professionals about the number of children admitted to local hospitals with smoking related respiratory problems.”

But Anne McIntosh, Conservative MP for Thirsk and Malton, said: “I believe in people taking personal responsibility for their actions and not fobbing that off onto the state.

“I do not therefore support a ban on smoking in cars, which seems to be unenforceable, but I shall press for better education of the dangers of smoking, especially in confined spaces.”

William Hague, the Richmond MP and Foreign Secretary, was in Brussels – and declined to say how he would have voted, if present - while fellow Tory, Stockton South MP James Wharton backed the ban.

The prime minister, touring flood-hit Somerset, also missed tonight’s vote, but his spokesman said he now believed “the time has come” for a ban when children are passengers.