The 51-to-48 vote came over the objections of two Republicans. The House is expected to give final approval to the package later this week, sending it to Mr. Trump for his signature.
The vote to take up legislation to rescind $9 billion in congressionally approved funds suggested that Republicans would bow to the president's wishes in the simmering fight over spending powers.