As a result of the shooting at the elementary school in the South Texas state, 21 people were killed, 19 of them are children, Texas Senator Roland Gutierrez said, The Voice of America reported.

Governor Greg Abbott told a news conference hours after the shooting that 14 students and a teacher had been killed. However, Senator Gutierrez later told CNN, citing Texas police, that the death toll had risen to 21 - 19 children and two adults.

The motives behind Tuesday's mass killing in Texas, which has become commonplace in the United States in recent years, are not yet known.

Governor Abbott said the suspect, according to eyewitnesses, drove up to the school campus in a car and entered the school building armed with a handgun and possibly a rifle.

Investigators have information that Ramos shot and killed his grandmother before opening fire at the school. CBS News television reported this, citing unnamed law enforcement sources.

According to the governor, the suspect, 18-year-old Salvador Ramos, was killed by police at the scene.

President Joe Biden has already been briefed on the tragedy in Texas, White House press secretary Karine Jean-Pierre said.

Joe Biden ordered that flags at the White House and other US federal buildings be flown at half-mast in honour of the victims in Uvalde.

The tragedy at the Uvalde school was the bloodiest elementary school shooting since the 2012 attack at Sandy Hook High School in Connecticut, when 20 children and six school employees were killed.

The shooting happened around noon at Robb Elementary School in the town of Uvalde, about 130 miles west of San Antonio. The town is home to about 15,000 people.

The Facebook page of the local hospital in Uvalde reported the arrival of 13 injured children who were brought to the hospital in ambulances, with two of the injured children unable to be saved.

Another hospital in San Antonio reported the admission of two patients injured in the shooting, a child and an adult.

School district officials urged people not to visit the school campus, adding that law enforcement officers were on the scene of the shooting.

Robb's school has children in grades two, three and four, said Pete Arredondo, police chief of the Uvalde Unified Independent School District. In U.S. schools, these classes are typically attended by children between the ages of 7 and 10.