Public opinion. The US public is sick of getting involved in the middle east, they don't want to spend tax dollars rebuilding nations that they've invaded and destroyed (see Iraq and Afghanistan).
Obama has, to his credit, successfully employed diplomacy to get Iran to fall in a relative line (see Iran and its nuclear program).
It has never been because the US military is weak, or because they don't want to go into Iran; The truth is that the Pentagon, and top military generals have, for the last few decades, demanded that Washington authorize strikes against Iran. Political pressure, but internal and external, has stopped any sort of military adventurism against Iran, and that's with KSA constantly demanding that the US invade Iran.