--- widgets.py	2013-02-21 16:44:24.366213476 +0100
+++ widgets.new.py	2013-02-21 16:44:40.106212782 +0100
@@ -684,7 +684,10 @@
         if value is None: value = []
         final_attrs = self.build_attrs(attrs, name=name)
         id_ = final_attrs.get('id', None)
-        output = ['<ul>']
+        if id_:
+            output = ['<ul id="%s">' % id_]
+        else:
+            output = ['<ul>']
         # Normalize to strings
         str_values = set([force_text(v) for v in value])
         for i, (option_value, option_label) in enumerate(chain(self.choices, choices)):
