A 52-year-old man was arrested near Market Street, Birstall, West Yorkshire Police said. The MP held a weekly advice surgery nearby.
The MP’s death was confirmed at police headquarters in Wakefield.
Police said they were not looking for anyone else in connection with the attack.
Labour leader Jeremy Corbyn said the country would be “in shock at the horrific murder”, describing the MP as a “much loved colleague”.
He added: “Jo died doing her public duty at the heart of our democracy, listening to and representing the people she was elected to serve.
“In the coming days, there will be questions to answer about how and why she died.
“But for now all our thoughts are with Jo’s husband Brendan and their two young children. They will grow up without their mum, but can be immensely proud of what she did, what she achieved and what she stood for
EU referendum campaigning has been suspended.
Britain Stronger In Europe and Vote Leave both halted their campaigns on Thursday afternoon after news of the attack broke.