Throughout hours of debate, several Republican opponents of the legislation said its supporters were trying to ram it through while much of the California delegation was back home because of the wildfires in their state. Ten of the 26 members who did not vote today are from California, and 8 of the 10 are Republicans.

A week ago, President Bush’s veto of the original bill was sustained, as the 273-to-156 vote in support of the bill was 13 short of the toll needed to overturn the veto. Forty-four Republicans voted then to override the veto, and the suspense before today’s vote was whether the bill’s supporters would convert any Republicans. But only 43 Republicans voted for the bill today.

“It’s unfortunate that even after a week of meetings and adjustments to the bill at the Republicans’ request, they would still apparently prefer to play politics instead of reauthorizing a program the vast majority of the country supports,” Representative Rahm Emanuel of Illinois, chairman of the House Democratic Caucus, said after today’s vote. “Once again, Republicans have chosen partisanship over pediatrics.”

The Senate will probably approve the revised bill next week. There is a veto-proof majority in favor of the bill in the Senate, but today’s vote in the House, as well as last week’s, signal that it will sustain Mr. Bush’s veto again.

If that happens, Democrats said, they may extend the existing insurance program for children through next summer. They would then schedule another vote on the issue in September or October, in the hope of inflicting maximum political damage on Republicans just before the 2008 elections.