Im from the US and I have no problems with someone from another country coming here to work. After all the vast majority of Americans were immigrants not too long ago. The problem is when companies (like Disney, etc.) feel its ok to fire someone who is doing their job and well and threaten to not give them their benefits unless they train their replacement. They all do this because they know they can bring someone over and hire them fora fraction of the cost.
Forcing companies by law to pay someone working on a visa as same as someone who is a US citizen is the only way to solve this problem. Sadly i cant support the visa system as it stands right now until this is fixed