[EDIT: To recreate issue, see first comment.]

I am working on the 'nested fieldgroup' patch for CCK. I'm not sure whether the following problem has anything to do with that or if it might be more general. In any case, I think it may be a jQuery issue. The following is the HTML for a representative section that is giving me problems. Before I post the code, I'll describe the issue.

In IE7, a 'multiple field' is inside a nested fieldgroup. That means there is a fieldgroup inside a fieldgroup and in the center is a multiple text field. I have no problems if I set the display of the inner fieldgroup to 'collapsible'. The problem only shows up when set to 'collapsed'. When I 'open' the fieldgroup by clicking on it, it opens a little bit and the 'add more values' button is shown. The text field box is not shown. Clicking on the button shows both the initial field that wasn't shown, plus the second one that clicking the button adds.

Here is the code for the just-opened fieldset, note the jQuery properties throughout. What are these????

[EDIT: The code is from a div immediately inside the fieldset, not the fieldset itself.]

<DIV class=fieldset-wrapper style="DISPLAY: block" oldblock="block" jQuery1236374421829="1612">
<TABLE class=sticky-header style="LEFT: 104px; VISIBILITY: hidden; WIDTH: 958px; POSITION: fixed; TOP: 0px" viewHeight="1870" vPosition="820" hPosition="104" vLength="-100" jQuery1236374421829="684">
<THEAD jQuery1236374421829="null">
<TR jQuery1236374421829="null">
<TH style="WIDTH: 0px" jQuery1236374421829="null"></TH>
<TH style="WIDTH: 0px" jQuery1236374421829="null">Event</TH>
<TH style="WIDTH: 0px" jQuery1236374421829="null">Event Date</TH>
<TH class=content-multiple-weight-header style="WIDTH: 0px" jQuery1236374421829="null">Order</TH>
<TH class=content-multiple-remove-header style="WIDTH: 0px" jQuery1236374421829="null">Remove</TH>
</TR>
</THEAD>
</TABLE>
<TABLE class="content-multiple-table content-multigroup-edit-table-multiple-columns sticky-enabled tabledrag-processed sticky-table content-multiple-remove-buttons-processed" id=group_app_hist_values jQuery1236374421829="173">
<THEAD class=tableHeader-processed jQuery1236374421829="636">
<TR jQuery1236374421829="677">
<TH jQuery1236374421829="678"></TH>
<TH jQuery1236374421829="679">Event</TH>
<TH jQuery1236374421829="680">Event Date</TH>
<TH class=content-multiple-weight-header jQuery1236374421829="681">Order</TH>
<TH class=content-multiple-remove-header jQuery1236374421829="682">Remove</TH>
</TR>
</THEAD>
<TBODY>
<TR class="draggable odd">
<TD class=content-multiple-drag>
<A class=tabledrag-handle title="Drag to re-order" href="http://dcsh55wb/cms/node/4/edit#" jQuery1236374421829="9">
<DIV class=handle>&nbsp;</DIV>
</A>
</TD>
<TD>
<DIV class=form-item id=edit-group-app-hist-0-field-app-hist-event-value-wrapper>
<LABEL for=edit-group-app-hist-0-field-app-hist-event-value>Event: </LABEL>
<INPUT class="form-text text" id=edit-group-app-hist-0-field-app-hist-event-value size=60 value="Some event" name=group_app_hist[0][field_app_hist_event][value]>
</DIV>
</TD>
<TD>
<DIV class="container-inline-date date-clear-block">
<DIV class=form-item id=edit-group-app-hist-0-field-app-hist-event-date-value-wrapper>
<LABEL for=edit-group-app-hist-0-field-app-hist-event-date-value>Event Date: </LABEL>
<DIV class=form-item id=edit-group-app-hist-0-field-app-hist-event-date-value-datepicker-popup-0-wrapper>
<INPUT class=form-text id=edit-group-app-hist-0-field-app-hist-event-date-value-datepicker-popup-0 maxLength=30 value=02/11/2009 name=group_app_hist[0][field_app_hist_event_date][value][date] jQuery1236374421829="154"> 
<DIV class=description>Format: 03/06/2009</DIV>
</DIV>
</DIV>
</DIV>
</TD>
<TD class=delta-order jQuery1236374421829="11">
<DIV class=form-item id=edit-group-app-hist-0--weight-wrapper>
<SELECT class="form-select group_app_hist-delta-order" id=edit-group-app-hist-0--weight name=group_app_hist[0][_weight]>
<OPTION value=-2>-2</OPTION>
<OPTION value=-1>-1</OPTION>
<OPTION value=0 selected>0</OPTION>
<OPTION value=1>1</OPTION>
<OPTION value=2>2</OPTION>
</SELECT>
</DIV>
</TD>
<TD class=content-multiple-remove-cell>
<DIV class=form-item id=edit-group-app-hist-0--remove-wrapper jQuery1236374421829="1037">
<INPUT class="form-checkbox content-multiple-remove-checkbox content-multigroup-remove-buttons-processed" id=edit-group-app-hist-0--remove type=checkbox alt=type:multigroup,name:group_app_hist,delta:0 value=1 name=group_app_hist[0][_remove] jQuery1236374421829="1045">
<A class=content-multiple-remove-button title="Remove this item" href="javascript:void(0)" jQuery1236374421829="1036"></A>
</DIV>
</TD>
</TR>
<TR class="draggable even">
<TD class=content-multiple-drag>
<A class=tabledrag-handle title="Drag to re-order" href="http://dcsh55wb/cms/node/4/edit#" jQuery1236374421829="10">
<DIV class=handle>&nbsp;</DIV>
</A>
</TD>
<TD>
<DIV class=form-item id=edit-group-app-hist-1-field-app-hist-event-value-wrapper>
<LABEL for=edit-group-app-hist-1-field-app-hist-event-value>Event: </LABEL>
<INPUT class="form-text text" id=edit-group-app-hist-1-field-app-hist-event-value size=60 value="Another event" name=group_app_hist[1][field_app_hist_event][value]>
</DIV>
</TD>
<TD>
<DIV class="container-inline-date date-clear-block">
<DIV class=form-item id=edit-group-app-hist-1-field-app-hist-event-date-value-wrapper>
<LABEL for=edit-group-app-hist-1-field-app-hist-event-date-value>Event Date: </LABEL>
<DIV class=form-item id=edit-group-app-hist-1-field-app-hist-event-date-value-datepicker-popup-0-wrapper>
<INPUT class=form-text id=edit-group-app-hist-1-field-app-hist-event-date-value-datepicker-popup-0 maxLength=30 value=02/10/2009 name=group_app_hist[1][field_app_hist_event_date][value][date] jQuery1236374421829="155"> 
<DIV class=description>Format: 03/06/2009</DIV>
</DIV>
</DIV>
</DIV>
</TD>
<TD class=delta-order>
<DIV class=form-item id=edit-group-app-hist-1--weight-wrapper>
<SELECT class="form-select group_app_hist-delta-order" id=edit-group-app-hist-1--weight name=group_app_hist[1][_weight]>
<OPTION value=-2>-2</OPTION>
<OPTION value=-1>-1</OPTION>
<OPTION value=0>0</OPTION>
<OPTION value=1 selected>1</OPTION>
<OPTION value=2>2</OPTION>
</SELECT>
</DIV>
</TD>
<TD class=content-multiple-remove-cell>
<DIV class=form-item id=edit-group-app-hist-1--remove-wrapper jQuery1236374421829="1039">
<INPUT class="form-checkbox content-multiple-remove-checkbox content-multigroup-remove-buttons-processed" id=edit-group-app-hist-1--remove type=checkbox alt=type:multigroup,name:group_app_hist,delta:1 value=1 name=group_app_hist[1][_remove] jQuery1236374421829="1046">
<A class=content-multiple-remove-button title="Remove this item" href="javascript:void(0)" jQuery1236374421829="1038"></A>
</DIV>
</TD>
</TR>
</TBODY>
</TABLE>
<DIV class="content-add-more clear-block" jQuery1236374421829="174">
<INPUT class="form-submit ahah-processed" id=edit-group-app-hist-group-app-hist-add-more type=submit value="Add more values" name=group_app_hist_add_more jQuery1236374421829="130">
</DIV>
</DIV>

And here is the code after I push the button. Note that the only thing (?) that changed was that the jQuery property thingies went away. Any idea what is going on here? Help!

<DIV class=fieldset-wrapper style="DISPLAY: block" oldblock="block">
<TABLE class=sticky-header style="LEFT: 104px; VISIBILITY: hidden; WIDTH: 958px; POSITION: fixed; TOP: 0px" viewHeight="1870" vPosition="820" hPosition="104" vLength="-100">
<THEAD>
<TR>
<TH style="WIDTH: 0px"></TH>
<TH style="WIDTH: 0px">Event</TH>
<TH style="WIDTH: 0px">Event Date</TH>
<TH class=content-multiple-weight-header style="WIDTH: 0px">Order</TH>
<TH class=content-multiple-remove-header style="WIDTH: 0px">Remove</TH>
</TR>
</THEAD>
</TABLE>
<TABLE class="content-multiple-table content-multigroup-edit-table-multiple-columns sticky-enabled tabledrag-processed sticky-table content-multiple-remove-buttons-processed" id=group_app_hist_values>
<THEAD class=tableHeader-processed>
<TR>
<TH></TH>
<TH>Event</TH>
<TH>Event Date</TH>
<TH class=content-multiple-weight-header>Order</TH>
<TH class=content-multiple-remove-header>Remove</TH>
</TR>
</THEAD>
<TBODY>
<TR class="draggable odd">
<TD class=content-multiple-drag>
<A class=tabledrag-handle title="Drag to re-order" href="http://dcsh55wb/cms/node/4/edit#">
<DIV class=handle>&nbsp;</DIV>
</A>
</TD>
<TD>
<DIV class=form-item id=edit-group-app-hist-0-field-app-hist-event-value-wrapper>
<LABEL for=edit-group-app-hist-0-field-app-hist-event-value>Event: </LABEL>
<INPUT class="form-text text" id=edit-group-app-hist-0-field-app-hist-event-value size=60 value="Some event" name=group_app_hist[0][field_app_hist_event][value]>
</DIV>
</TD>
<TD>
<DIV class="container-inline-date date-clear-block">
<DIV class=form-item id=edit-group-app-hist-0-field-app-hist-event-date-value-wrapper>
<LABEL for=edit-group-app-hist-0-field-app-hist-event-date-value>Event Date: </LABEL>
<DIV class=form-item id=edit-group-app-hist-0-field-app-hist-event-date-value-datepicker-popup-0-wrapper>
<INPUT class=form-text id=edit-group-app-hist-0-field-app-hist-event-date-value-datepicker-popup-0 maxLength=30 value=02/11/2009 name=group_app_hist[0][field_app_hist_event_date][value][date]> 
<DIV class=description>Format: 03/06/2009</DIV>
</DIV>
</DIV>
</DIV>
</TD>
<TD class=delta-order>
<DIV class=form-item id=edit-group-app-hist-0--weight-wrapper>
<SELECT class="form-select group_app_hist-delta-order" id=edit-group-app-hist-0--weight name=group_app_hist[0][_weight]>
<OPTION value=-2>-2</OPTION>
<OPTION value=-1>-1</OPTION>
<OPTION value=0 selected>0</OPTION>
<OPTION value=1>1</OPTION>
<OPTION value=2>2</OPTION>
</SELECT>
</DIV>
</TD>
<TD class=content-multiple-remove-cell>
<DIV class=form-item id=edit-group-app-hist-0--remove-wrapper>
<INPUT class="form-checkbox content-multiple-remove-checkbox content-multigroup-remove-buttons-processed" id=edit-group-app-hist-0--remove type=checkbox alt=type:multigroup,name:group_app_hist,delta:0 value=1 name=group_app_hist[0][_remove]>
<A class=content-multiple-remove-button title="Remove this item" href="javascript:void(0)"></A>
</DIV>
</TD>
</TR>
<TR class="draggable even">
<TD class=content-multiple-drag>
<A class=tabledrag-handle title="Drag to re-order" href="http://dcsh55wb/cms/node/4/edit#">
<DIV class=handle>&nbsp;</DIV>
</A>
</TD>
<TD>
<DIV class=form-item id=edit-group-app-hist-1-field-app-hist-event-value-wrapper>
<LABEL for=edit-group-app-hist-1-field-app-hist-event-value>Event: </LABEL>
<INPUT class="form-text text" id=edit-group-app-hist-1-field-app-hist-event-value size=60 value="Another event" name=group_app_hist[1][field_app_hist_event][value]>
</DIV>
</TD>
<TD>
<DIV class="container-inline-date date-clear-block">
<DIV class=form-item id=edit-group-app-hist-1-field-app-hist-event-date-value-wrapper>
<LABEL for=edit-group-app-hist-1-field-app-hist-event-date-value>Event Date: </LABEL>
<DIV class=form-item id=edit-group-app-hist-1-field-app-hist-event-date-value-datepicker-popup-0-wrapper>
<INPUT class=form-text id=edit-group-app-hist-1-field-app-hist-event-date-value-datepicker-popup-0 maxLength=30 value=02/10/2009 name=group_app_hist[1][field_app_hist_event_date][value][date]> 
<DIV class=description>Format: 03/06/2009</DIV>
</DIV>
</DIV>
</DIV>
</TD>
<TD class=delta-order>
<DIV class=form-item id=edit-group-app-hist-1--weight-wrapper>
<SELECT class="form-select group_app_hist-delta-order" id=edit-group-app-hist-1--weight name=group_app_hist[1][_weight]>
<OPTION value=-2>-2</OPTION>
<OPTION value=-1>-1</OPTION>
<OPTION value=0>0</OPTION>
<OPTION value=1 selected>1</OPTION>
<OPTION value=2>2</OPTION>
</SELECT>
</DIV>
</TD>
<TD class=content-multiple-remove-cell>
<DIV class=form-item id=edit-group-app-hist-1--remove-wrapper>
<INPUT class="form-checkbox content-multiple-remove-checkbox content-multigroup-remove-buttons-processed" id=edit-group-app-hist-1--remove type=checkbox alt=type:multigroup,name:group_app_hist,delta:1 value=1 name=group_app_hist[1][_remove]>
<A class=content-multiple-remove-button title="Remove this item" href="javascript:void(0)"></A>
</DIV>
</TD>
</TR>
</TBODY>
</TABLE>
<DIV class="content-add-more clear-block">
<INPUT class="form-submit ahah-processed" id=edit-group-app-hist-group-app-hist-add-more type=submit value="Add more values" name=group_app_hist_add_more>
</DIV>
</DIV>

Comments

rconstantine’s picture

Re-create the issue by installing the patched and zipped version of CCK found here: http://drupal.org/node/300084#comment-1296742

Then, import this CCK content type definition and note that the field that should be inside of the fieldset 'inner group' is missing in IE7 until you 'Add another item'.

$content[type]  = array (
  'name' => 'Test Content Type',
  'type' => 'testing_123',
  'description' => '',
  'title_label' => 'Title',
  'body_label' => 'Body',
  'min_word_count' => '0',
  'help' => '',
  'node_options' => 
  array (
    'status' => true,
    'promote' => false,
    'sticky' => false,
    'revision' => false,
  ),
  'old_type' => 'testing_123',
  'orig_type' => '',
  'module' => 'node',
  'custom' => '1',
  'modified' => '1',
  'locked' => '0',
  'og_content_type_usage' => 'omitted',
  'comment' => '0',
  'comment_default_mode' => '4',
  'comment_default_order' => '1',
  'comment_default_per_page' => '50',
  'comment_controls' => '3',
  'comment_anonymous' => 0,
  'comment_subject_field' => '1',
  'comment_preview' => '0',
  'comment_form_location' => '1',
);
$content[groups]  = array (
  0 => 
  array (
    'label' => 'Outer Group',
    'group_type' => 'standard',
    'settings' => 
    array (
      'form' => 
      array (
        'style' => 'fieldset',
        'description' => '',
      ),
      'display' => 
      array (
        'description' => '',
        'teaser' => 
        array (
          'format' => 'fieldset',
          'exclude' => 0,
        ),
        'full' => 
        array (
          'format' => 'fieldset',
          'exclude' => 0,
        ),
        4 => 
        array (
          'format' => 'fieldset',
          'exclude' => 0,
        ),
        2 => 
        array (
          'format' => 'fieldset',
          'exclude' => 0,
        ),
        3 => 
        array (
          'format' => 'fieldset',
          'exclude' => 0,
        ),
        'token' => 
        array (
          'format' => 'fieldset',
          'exclude' => 0,
        ),
        'label' => 'above',
      ),
    ),
    'weight' => '-3',
    'group_name' => 'group_outer',
    'parent_group_name' => '',
  ),
  1 => 
  array (
    'label' => 'Inner Group',
    'group_type' => 'standard',
    'settings' => 
    array (
      'form' => 
      array (
        'style' => 'fieldset_collapsed',
        'description' => '',
      ),
      'display' => 
      array (
        'description' => '',
        'teaser' => 
        array (
          'format' => 'fieldset',
          'exclude' => 0,
        ),
        'full' => 
        array (
          'format' => 'fieldset',
          'exclude' => 0,
        ),
        4 => 
        array (
          'format' => 'fieldset',
          'exclude' => 0,
        ),
        2 => 
        array (
          'format' => 'fieldset',
          'exclude' => 0,
        ),
        3 => 
        array (
          'format' => 'fieldset',
          'exclude' => 0,
        ),
        'token' => 
        array (
          'format' => 'fieldset',
          'exclude' => 0,
        ),
        'label' => 'above',
      ),
    ),
    'weight' => '0',
    'group_name' => 'group_inner',
    'parent_group_name' => 'group_outer',
  ),
);
$content[fields]  = array (
  0 => 
  array (
    'label' => 'Multi-field',
    'field_name' => 'field_multi',
    'type' => 'text',
    'widget_type' => 'text_textfield',
    'change' => 'Change basic information',
    'weight' => 0,
    'rows' => 5,
    'size' => '30',
    'description' => '',
    'default_value' => 
    array (
      0 => 
      array (
        'value' => '',
        '_error_element' => 'default_value_widget][field_multi][0][value',
      ),
    ),
    'default_value_php' => '',
    'default_value_widget' => NULL,
    'group' => 'group_inner',
    'required' => 0,
    'multiple' => '1',
    'text_processing' => '0',
    'max_length' => '',
    'allowed_values' => '',
    'allowed_values_php' => '',
    'op' => 'Save field settings',
    'module' => 'text',
    'widget_module' => 'text',
    'columns' => 
    array (
      'value' => 
      array (
        'type' => 'text',
        'size' => 'big',
        'not null' => false,
        'sortable' => true,
        'views' => true,
      ),
    ),
    'display_settings' => 
    array (
      'label' => 
      array (
        'format' => 'above',
        'exclude' => 0,
      ),
      'teaser' => 
      array (
        'format' => 'default',
        'exclude' => 0,
      ),
      'full' => 
      array (
        'format' => 'default',
        'exclude' => 0,
      ),
      4 => 
      array (
        'format' => 'default',
        'exclude' => 0,
      ),
      2 => 
      array (
        'format' => 'default',
        'exclude' => 0,
      ),
      3 => 
      array (
        'format' => 'default',
        'exclude' => 0,
      ),
      'token' => 
      array (
        'format' => 'default',
        'exclude' => 0,
      ),
    ),
  ),
);
$content[extra]  = array (
  'title' => '-5',
  'body_field' => '-4',
  'menu' => '0',
);
fantasma’s picture

Today i had the same problem. I could find the solution on: http://drupal.org/node/247957. By changing the system.css the problem was gone.