Quoting from the US Embassy website here in Australia;
"Q.8 My passport has expired, but the U.S. visa in it is still valid. Do I need to apply for a new visa?
No. If your visa is valid and unmarked or undamaged, you can travel with your two passports together (old and new), if the purpose of your travel matches your current nonimmigrant visa. Also, the name and other personal data must be the same in both passports (unless the name change was due to marriage), and both passports must be from the same country and of the same type (i.e., both tourist passports and both diplomatic passports).
If your name changed due to marriage, you can travel to the United States with both passports as well as your marriage certificate."
I had a big issue when i recieved my new smaller passport (grumble grumble) in December and applied for my ESTA. Very long story, got knocked back, applied for a visa, got knocked back, had to get my police record. And just i had filled in a form for the record, the US Embassy came back saying they reviewed my application and send it back to them, they don't need the police record. Four weeks later the passport/Visa arrived. the break has put me back so much this year, but the flipside it was good to be grounded for a while.