EUGENE, Ore. -- The look on Marcus Mariota's face was unmistakable: He was stunned.
Oregon's star quarterback lingered on the field late Thursday night following his team's 31-24 loss to Arizona, shaking hands with the Wildcats after they upset the heavily favored Ducks for the second consecutive season.
Later, he shouldered the blame for a loss that left No. 2 Oregon with a tough hill to climb if it wants an invite to college football's first postseason playoff.
And he credited the unranked Wildcats, who were 24-point underdogs.
"They're undefeated," he said. "It's obviously a testament to our conference. If you're not prepared each week, if you're not ready to play, you'll lose."
Oregon offensive coordinator Scott Frost told reporters after the game that Mariota was not 100 percent after he was sacked seven times in the Ducks' 38-31 victory at Washington State in their previous game Sept. 20.
True freshman Nick Wilson ran for two touchdowns and caught a scoring pass from quarterback Anu Solomon to help the Wildcats (5-0, 2-0 Pac-12) open the season with five straight victories for the first time since 1998.
Terris Jones-Grigsby plowed into the end zone from a yard out for the tiebreaking touchdown with 2:54 left, and Arizona held on after sacking Mariota and recovering his fumble.
It was the third time since 2007 that an unranked Wildcats team upset an Oregon squad ranked in the top 5.
"They're probably having a good time in Tuscan, Arizona, right now," Wildcats coach Rich Rodriguez said.
With Arizona driving downfield, the Ducks (4-1, 1-1) sacked Solomon on third-and-8, but Tony Washington was called for unsportsmanlike conduct to give the Wildcats a first down.
A pass interference call got Arizona closer for Jones-Grigsby's go-ahead touchdown. And on Oregon's ensuing series, Mariota was sacked by Scooby Wright, who stripped the ball from the Heisman Trophy hopeful and recovered it himself.
"It was a good play by him, honestly," Mariota said.
Arizona then gained a clinching first down on the ground and ran out the clock, silencing Autzen Stadium's 100th straight sellout crowd.
"Last year it was really heartwarming because it was the seniors' last home game and it was improbable, of course," Rodriguez said. "This one, I don't know if anybody picked us. I don't know how many people were talking about us, but I bet you most of them weren't thinking this was going to happen, not on the road."
Mariota, who hugged Rodriguez after the game, threw for 181 yards and a touchdown. The quarterback also caught a TD pass, but was sacked three times and turned the ball over for the first time all season.
"I thought we played hard, for the most part. We came out ready to play; we didn't play cleanly enough or smart enough," Oregon coach Mark Helfrich said.
Last November, the No. 5 Ducks lost to Arizona 42-16 in Tucson, dashing any hopes Oregon had of winning a national championship.
The blowout victory was Arizona's first over a top-5 team since knocking off No. 2 Oregon in 2007.
Solomon, a redshirt freshman, threw for 287 yards and a touchdown for Arizona.
The Ducks appeared to still be struggling with their unstable offensive line, with Tyler Johnstone, Andre Yruretagoyena and Jake Fisher all still out with injuries. True freshman Tyrell Crosby and former walk-on Matt Pierson started for the second game at tackle.
Oregon got creative to start the second quarter with Mariota handing off to freshman running back Royce Freeman, who lobbed the ball back to Mariota for a 28-yard touchdown. After a review for what appeared could be a fumble at the goal line, the TD stood to put the Ducks up 7-3.
The Ducks weren't the only ones making unusual plays. Solomon threw a 21-yard pass to himself - helped by a carom off Oregon defensive end DeForest Buckner. The Wildcats made it to the red zone, but Jones-Grigsby fumbled and the Ducks recovered on their own 10.
Arizona opened the second half with a six-play, 80-yard drive capped by Wilson's 3-yard touchdown run to go up 10-7.
Oregon answered with its own scoring drive - helped along by a taunting call on Arizona that gave the Ducks a crucial first down - that ended when Mariota hit Devon Allen with a 6-yard pass to make it 14-10.
Wilson added a 2-yard scoring run to give the Wildcats back the lead. Before the third quarter was over he added a 28-yard TD catch from Solomon to give Arizona a 24-14 advantage going into the final quarter.
The Ducks were hurt when starting defensive end Arik Armstead left the game midway through the second quarter with what appeared to be a left foot injury. Armstead was slow to get up on a third-down play and later retreated to the locker room with team trainers.
Mariota threw for 329 yards and five touchdowns against Washington State, but couldn't duplicate that performance.
Arizona also had a bye week after a dramatic, come-from-behind 49-45 victory over California, won when Solomon hit Austin Hill on a 47-yard Hail Mary on the game's final play.