Montana GOP congressional candidate Greg Gianforte narrowly defeated Democratic challenger Rob Quist late Thursday despite being charged with assault for “body-slamming” a reporter.

Gianforte was charged with assaulting Guardian reporter Ben Jacobs on Wednesday after Jacobs asked him about the GOP health care bill and the candidate allegedly tossed him on the floor.

In his victory speech late Thursday, Gianforte apologized to the reporter for the incident.

“Last night I made a mistake,” he said.

“That’s not the person I am and that’s not the way I’ll lead this state,” he said.

The GOP candidate had been a heavy favorite in the special election to fill Montana’s vacant House seat — but the race tightened once he was charged with assault.

Earlier Thursday, House Speaker Paul Ryan called for Gianforte to apologize for the incident, but did not ask him to step aside.

“I think he should apologize,” Ryan said at a press conference.

“That is wrong and should not have happened. I’m going to let the people of Montana decide who they want as their representative. That’s not our choice.”

In the wake of the assault, three of Montana’s biggest newspapers — the Helena Independent Record, the Billings Gazette and the Missoulian — pulled their endorsements of Gianforte.

“We are also sick and tired — of Gianforte’s incessant attacks on the free press,” the Helena Independent Record wrote.

In an editorial, the Billings Gazette wrote that it was “at a loss for words.”

The Democratic Congressional Campaign Committee ran ads Thursday that called for residents to vote for Quist, who has declined to comment on Gianforte’s assault charges.

Missoula County election administrator Rebecca Connors told CNN she’d gotten a dozen phone calls from early voters saying they wanted to change their vote.

Still, Gianforte pulled off a win — as more than 259,000 mail-in ballots were returned prior to the alleged incident.

In the 2016 presidential election, President Trump won Montana by more than 20 points.

The Guardian reporter claims Gianforte “body-slammed” him and broke his glasses at the candidate’s headquarters in Bozeman.

The alleged attack was witnessed by a crew of Fox News reporters who were also on site for interviews.

They said Gianforte also threw punches — an allegation that wasn’t made by Jacobs or police.

In an audio recording posted by The Guardian, an agitated Gianforte brushes off Jacobs’ question — right before there’s a giant crashing noise and the apparent sound of the two men scuffling.

“I’m sick and tired of you guys! The last guy who came in here did the same thing!” Gianforte growls. “Get the hell out of here!”

“You just body-slammed me and broke my glasses,” a shaken Jacobs replies.

Gianforte’s camp provided a different account — claiming that “Jacobs grabbed Greg’s wrist, and spun away from Greg, pushing them both to the ground.”

In an interview Thursday morning, Jacobs denied laying a finger on Gianforte.

“The only thing in Gianforte’s statement that is factually correct is my name and my place of employment,” Ben Jacobs said on ABC’s “Good Morning America.”