Tea party-backed Ted Cruz has defeated Texas Lt. Gov. David Dewhurst for the Republican nomination for U.S. Senate.