Police said the assailants threw the grenade at a slow-moving security vehicle near the all-boy Tyndale Biscoe school on Thursday.
The grenade missed its target and exploded among parents, children and other people near the school gates just as classes were ending for the day, police added.
Doctors said at least four of the wounded - two schoolgirls and one boy - were in critical condition.
Shopkeepers, passers-by and security personnel carried victims with bloodstained clothes to cars and ambulances to be taken to hospital.
Witnesses said schoolchildren were screaming as they lay in pools of blood on the road.
Among those who received bomb-splinter injuries were 14 boys and 13 girls.
"The area has been sealed off and searches launched to arrest the militants involved in the attack," a paramilitary officer said.
The blast shook the main shopping area known as Lal Chowk, or Red Square, which is often targeted by rebels due to its commercial importance. The square is guarded and dotted by some half-a-dozen security bunkers.
Two attacks in as many days are
sure to escalate tensions anew
Most of the students on roll at these two schools belong to local Muslim families. As the news of the attack broke, parents and other relatives headed for Lal Chowk, many of the women seen weeping.
"The attackers are believed to have taken advantage of the confusion to flee," a paramilitary officer said.
While Kashmir government leaders blamed Muslim fighters for Thursday's attack, none of the dozen or so separatist groups battling Indian security forces in the valley had admitted responsibility till late Thursday.
The grenade attack came a day after a car bombing killed two people and wounded scores more in Srinagar. Two separatist groups claimed responsibility to that attack.
Yusuf Jameel in Srinagar contributed to this report.