Police were called to Richneck Elementary School in Newport News, Virginia, on Friday after a classroom incident that left the teacher, Abby Zwerner, with "life-threatening" injuries.
The boy is said to have shot Ms Zwerner with a handgun. She is reported to have urged her pupils to run for safety.
Phillip Jones, the mayor of the city of Newport News in Virginia, where the incident happened, described it as a "red flag for the country".
He said the condition of the teacher at Richneck Elementary School is "trending in a positive direction" as she remains in hospital.
Police initially said the teacher’s injures were "life-threatening" but said a senior officer had met her on Saturday and "she has improved and is currently listed in stable condition".
Steve Drew, chief of police in the city, said the boy had a gun in the classroom and the shooting was not an accident. Pupils were evacuated to the school’s gymnasium.
George Parker, the superintendent of the city’s public schools, made a plea for Americans to "keep guns out of the hands of our young people". He said: "I cannot control access to weapons, my teachers cannot control access to weapons.
"Today our students got a lesson in gun violence and what guns can do to disrupt not only an educational environment, but also a family, a community."
The shooting, the latest in a long list at US schools, is sure to reignite the debate about access to guns.
Although Congress passed a bill in the summer that tightened restrictions on access to firearms for those considered a risk of being violent, there were 51 school shootings last year that resulted in injuries or deaths, according to the Education Week news organisation.