PHILADELPHIA - Another sharp performance by Nick Foles and tough defense at the end kept the Philadelphia Eagles on a roll.
Foles threw three touchdown passes and the Eagles held on for a 24-21 victory over the Arizona Cardinals on Sunday.
Zach Ertz had two TD catches, LeSean McCoy ran for 79 yards to help the Eagles (7-5) win their fourth straight game to remain tied with Dallas for first place in the NFC East.
Carson Palmer threw for 302 yards and three TD passes, but also had two interceptions and lost a fumble as the Cardinals (7-5) had their four-game winning streak snapped.
Foles picked up where he left off in November, when he was the NFC's Player of the Month and tied an NFL record with seven TDs in a game. Foles finished 21 of 34 for 237 yards against a defense that came in ranked eighth in the league.
Foles set a team record for most passes without an interception (233), breaking Michael Vick's mark of 224 set in 2010. He also moved within one TD pass of tying Peyton Manning's record of 20 TD passes and zero interceptions to start a season.
He threw an interception that was negated by a penalty, however.
Foles got away with a poor decision late in the fourth when he was intercepted by Patrick Peterson at the Philadelphia 43. But a holding penalty on Tyrann Mathieu gave the Eagles a first down.
The Cardinals forced a punt and took over at their 10 with 2:08 left. But Palmer misfired on third-and-5, and Bradley Fletcher knocked down a pass to Michael Floyd on fourth down.
In a game featuring two defensive coordinators going against former teams, Bill Davis' unit outplayed Todd Bowles' group.
The Eagles have held opponents to 21 points or fewer in eight straight games after giving up an average of 27.5 points per game the first four weeks.
Trent Cole and Brandon Graham each had two sacks for the Eagles, who put Palmer down five times.
Down 24-7 after Foles threw a 24-yard TD pass to Ertz on the first series in the third quarter, the Cardinals rallied. Palmer tossed a 23-yard TD pass to Floyd to cut it to 24-14 on the next series.
A holding penalty on Kurt Coleman negated DeSean Jackson's 54-yard punt return for a score early in the fourth.
Palmer then threw a 3-yard TD pass to Jim Dray to get the Cardinals within a field goal at 24-21 with 4:45 left.
Foles drove the Eagles 78 yards late in the second quarter, tossing a 1-yard TD pass to Brent Celek to make it 17-7 before halftime. A 28-yard pass interference penalty on Jerraud Powers put the ball at the 1.
Palmer connected with Larry Fitzgerald on a 43-yard TD pass to tie it at 7 midway through the second quarter.
Fitzgerald made the catch over the middle on a third-and-20 pass, two defenders collided into each other and the seven-time Pro Bowl receiver ran untouched into the end zone.
Alex Henery's 32-yard field goal gave the Eagles a 10-7 lead in the second quarter. Riley Cooper gained 24 yards on a leaping one-handed catch-and-run to give the Eagles a first down at the Cardinals 6.
Chip Kelly then called a wildcat play for the first time this season, but Brad Smith dropped the snap and lost 4 yards.
On the third play from scrimmage, Cole sacked Palmer and forced a fumble that was recovered by Bennie Logan at the Cardinals 25. Foles then tossed a 6-yard TD pass to Ertz for a 7-0 lead.