The weather's ALWAYS nice in San Diego! It generally rains mostly in Jan-March, but there's always a chance of showers. It will probably be overcast in the morning, burning off around 10 am, then around 65-70 most days. It will get cool in the evening, so make sure you have a sweatshirt, especially if you will be at the beach.
I would skip Legoland. Your kids will enjoy Knott's much more. If you are willing to drive a little further, and your kids like roller coasters, Six Flags Magic Mountain just north of LA (in Valencia) is so much fun. And you can buy tickets for $27 online ($54 at the gate). They used to have a deal where you can buy a "twicket" inside the park and get in the next day for $2.00. But Magic Mountain is about 3 hrs from San Diego. Otherwise Knott's has some great rides and is about 2 hrs away.
I think the kids would enjoy SeaWorld, too.
For souveneirs, most of the WalMarts have a section where you can get keychains, snowglobes, etc. for much cheaper than the souveneir shops. Seaport Village has a great shop for purchasing shells, too.