Well, first off, possession of pot is a crime (at least it was until this year, two states, it is legal). So you don't want someone on your team who is committing a misdemeanor crime.
There are only 32 NFL teams. Big picture wise, there is a huge number of eligible players in NCAA Div I football teams every year, plus some superstar high school players. All these eligible players are vying for a small number of open spots. If they don't make it, they go to CFL, arena football, or move onto a non-football career.
So, NFL teams weed out problem players, not just pot use, but other crimes. Crime equals team problems. You only have 17 regular season games, do you want your high-dollar running back to be in jail during game time? No. Even if you bail him out, it's just a team administration/PR headache. Team owners and the league want to project themselves not only as a professional organization where they provide sports entertainment but an organization that gives back to the community and have players who can be seen as heros and mentors, not a group of f-ups (pardon my French).
What to do? Weed out problem players at the start.
As a hypothetical situation, there is only team in the NFL with an opening for the tight end position. All other teams have either traded for other free agents or kept their existing tight ends. You have ten players who just graduated from top NCAA football programs and have good stats. Of these ten players, you have one pot-smoker. Of these ten players, you can pick three guys to show at your combine. Do you really think it is easier to choose among the other nine? It's a no-brainer. So from a player's perspective, you are up against a lot of competition. There's no reason to risk your future over something that will give others a leg up on you.