I have a Citibank/American Airlines card that has this option. The interface to create the virtual card number is somewhat crappy (flash) but it works. This is probably available on other citibank cards as well.
Five is a sufficiently close approximation to infinity. -- Robert Firth "One, two, five." -- Monty Python and the Holy Grail