ECOLA STATE PARK, Ore. – A Portland man said he fought off a shark by punching it several times after it attacked him in the water off the Oregon Coast Monday afternoon.

The attack occurred around 4 p.m. at Indian Beach, a popular surfing spot north of Cannon Beach.

Joseph Tanner, 29, was surfing when the shark bit his upper and lower thigh. Witnesses said Tanner was in the water for about 15 minutes before he was attacked.

"He said he got on his board like any surfer taking a wave, and he got grabbed and taken under. He said he punched it a few times, which was amazing and I think that's when it released him and he paddled back," said Cannon Beach Fire Volunteer Shaunna White. "He said the most frightening thing about it, was he felt like the shark was chasing him as he was trying to get back to shore."

West Woodworth, 29, was in the water nearby. He told police he saw Tanner flail around and get back on his board. Tanner then yelled at the other surfers and told them to get out of the water.

He and the other surfers paddled back to shore. Tanner, who is a trauma nurse, started directing Woodworth and others how to tie a tourniquet around his leg.

"He directed his own first aid, what needed to be done, he asked us a lot of questions, what we were seeing, if we saw spurting blood," said Jeff Rose, another witness who was at the beach when Tanner paddled back to shore.

Six people loaded Tanner onto his surf board and carried him to a parking lot to wait for an ambulance.

"When we showed up, he was on his surfboard, in a truck, with already two tourniquets on," White said.

Tanner told responders that the shark was "medium-big" and he thought it might have been a great white shark but he wasn't sure.

Another witness, a 42-year-old Portland man who didn't want his name to be released, told police he was about 10 feet away from Tanner when he saw him slip off his board. He asked Tanner if he was OK, and then saw a large dorsal fin and the back of the shark, which he said was about eight feet long.

Listen: Shark attack 911 call

Medics took Tanner to Legacy Emanuel hospital in Portland with serious injuries.

Rose said a friend of his saw a shark attack a seal in the same area about three months ago.

There are 16 species of shark found along the Oregon Coast, including great white sharks. There have been 27 shark attacks in Oregon since 1974. No one died.

Three warning signs were put up at Ecola State Park. Beaches remain open.