It's in the players best interest to have a salary cap. It's the rising tide that lifts all boats. It forces teams to spend close to the cap, keeps markets somewhat competitive and provides some financial stability for the league, which is good for the NFL for both the owners and players.
Teams like the Jets and Cowboys who are so ridiculously leveraged with stadiums, can't afford to hire everybody, so you need to have a mechanism to spread that opportunity around. If you are a top shelf player, you want competing offers from a variety of teams, not just one or two.