You have to get a visa, unfortunately. You have two options:
1.Go to Hong Kong to get H1B visa. No need to make appoitnment for H1B. If you come early in the morning and let them mail the passport to Central Mailstation, you can pick it up next day.
2.If you can get an appointment in Shanghai, and your background is not sensitive, you should have no problem to get the visa. You will need you I797 number to make the appointment. I just got a H1B visa from Shanghai. It took less than 3 days before they mailed it. If you choose to pick up at the mailstation, you probably can get it in 3 days.
Bring your return ticket to ask whether you can pick up at the consulate earlier. (I did once in 2008).
Good luck