A statement from police said the stabbing took place between the Old City and the western sector's city hall, with a guard from the municipality apprehending the assailant.
The suspect was an 18-year-old Palestinian illegally in Israel, police said, adding that he was "being taken for questioning".
Police said the victim was stabbed in the stomach with a knife. A spokesman for Israel's emergency medical services said he was being taken to hospital in light-to-moderate condition.
Last month, a knife-wielding Palestinian attacked passengers on a morning rush-hour bus in Tel Aviv, wounding 12 people, before being shot and wounded by a passing prison officer.
In December, a knife-wielding Palestinian wounded two Israeli police officers in Jerusalem's Old City.