Matthew Stafford didn't even need Calvin Johnson to carve up the Jacksonville Jaguars.

Stafford completed 11 of 15 passes for 173 yards and two touchdowns, helping the Lions beat the Jaguars 22-17 in a preseason game Friday night.

The Lions (2-1) trailed most of the night, but rookie Zach Zenner's 3-yard touchdown run with 1:41 remaining was the winner.

Johnson sat out his third consecutive game as a precaution, but Stafford found other options. He threw a perfect deep ball to Golden Tate for a 62-yarder in the second quarter and then hooked up with Corey Fuller for a 4-yard score.

Zenner had a 41-yard scamper that set up Fuller's TD. He finished with 85 yards on eight carries, continuing his push for a roster spot.

Blake Bortles was the story again for Jacksonville (1-2). He completed 20 of 29 passes for 245 yards and a touchdown. He also ran for 38 yards, including two third-down scrambles that kept scoring drives alive.

"I think it was a good outing for the offense," Bortles said. "(But) definitely some things to look back at and learn from."

The second-year pro continued his strong preseason, looking every bit like the franchise quarterback the Jaguars have spent more than a decade searching for. Bortles has completed 39 of 60 passes for 461 yards, with a touchdown and no interceptions, in the preseason. He also ran for a score in the exhibition opener.

Maybe the most encouraging sign for the Jaguars: Bortles and the first-team offense have managed eight scoring drives in 11 preseason possessions.

"I think everything is just slowing down," Bortles said. "Getting more reps; feeling more comfortable. I think the new additions we've had through free agency and the draft have been huge. . I think we've done some good stuff."