Can any one tell me if i need to have a return flight booked if i am entering the US on a 'L' or 'E' visa.

I have been told that they will not let you in on a one way flight, which i find strange as i dont know when i will be returning.

Thanks
Jeff