"She turned around and went to run - he pulled her back by the arm and she screamed and pushed his hand off her and then ran all the way back to school."
Mrs Rowley said no one else was around, which was unusual for that time of day.
"She was petrified, it's been horrible, she was shaking and crying when she came home, and has been having nightmares."
As a result of the incident, Mrs Rowley, who also has a 16-year-old daughter at Taradale High School, said she wanted to encourage all children to carry personal panic alarms with them.
"I have bought one each for my daughters - they can be attached to anything, a bag, belt or zipper, and you just have to pull on it, which pulls the pin out of it and sets off a 110 decibel alarm bell.
"I'm not putting a price on my kids' safety, it didn't cost that much, and going through this experience with my daughter it's a bit more peace of mind."
A personal alarm such as she got her daughters cost about $13.
She said she hoped to enlist the school's support to introduce the measure, and suggested other schools may be interested as well.
Taradale High School principal Stephen Hensman said he did not know enough yet about the alarms to comment on them, but said it seemed like a sensible and responsible idea.
In the meantime a message was being sent to all parents to advise them of the incident.
"We are letting them know that it's been reported to the police and have asked them to talk to their children about how to keep themselves safe."
Hawke's Bay police detective Vanessa Jones said that at this stage in the inquiries they did not know for sure what the man's intentions were, but added that the girl did the right thing.
She said police were keen to hear from any witnesses, and were interested in any sightings of the older-style, black van in the area just after 3.30pm on Friday.
She said it was a totally different case to that of a Tamatea High School student who was approached and grabbed by a man on the way to school on Monday, March 13.
Anyone with any information can contact their local police or call Crimestoppers on 0800 555 111.