Sweden's Majstorovic set to miss Euro 2012
The 34-year-old Majstorovic was preparing for Wednesday's friendly against Croatia in Zagreb.
"It was a situation where Anders Svensson was in a challenge with Zlatan [Ibrahimovic] and he fell over on Daniel's leg," Sweden coach Erik Hamren told reporters.
"It's painful for us but most of all for Daniel. He's had enough negatives. He's a great person to have in the group too, which makes it even more painful."
Celtic said Majstorovic would stay in Sweden for the immediate future and undergo an operation.
"Celtic's medical team will be in close liaison with the Swedish FA medical team to ensure that Daniel receives the best of care," they said in a statement on their website. "Unfortunately he will be out long-term."
Sweden face Ukraine, France and England in June's European Championship in Ukraine and Poland.