--- grid.inc	2008-07-23 14:02:37.000000000 +0800
+++ grid_new.inc	2008-08-29 16:52:58.000000000 +0800
@@ -119,14 +119,16 @@ function _webform_submission_display_gri
  *   Nothing
  **/
 function _webform_submit_grid(&$data, $component) {
-  $options = drupal_map_assoc(array_flip(_webform_select_options($component['extra']['items'])));
+  $options = drupal_map_assoc(array_flip(_webform_select_options($component['extra']['options'])));
+  $questions = array_flip(_webform_select_options($component['extra']['questions']));
 
   if (is_array($data)) {
     foreach ($data as $key => $value) {
       if ($value) {
-        $data[$key] = $options[$value];
+        $data2[$questions[$key]] = $options[$value];
       }
     }
+    $data = $data2; //need to overwrite the old data.
   }
   elseif (!empty($data)) {
     $data = $options[$data];
