【问题标题】:Remove extra div in drupal_get_form删除 drupal_get_form 中的额外 div
【发布时间】:2014-03-02 07:23:23
【问题描述】:

我正在尝试显示如下表格:

drupal_get_form('_part_profile_add_record_form');

在哪里,

function _part_profile_add_record_form() {
 $form = array();
    $form['#method'] = "post";
    $form['#name'] = 'part_profile_add_record';
    $form['#attributes']['enctype'] = 'multipart/form-data';

    $form['record'] = array(
        '#type' => 'fieldset',
        '#title' => t('Add a Participant Record fieldset'),
        '#prefix' => '<table id="part-record">',        
        '#suffix' => '</table>',
        '#collapsible' => TRUE,
        '#collapsed' => TRUE,
    );
    $form['record'] ['crs_ctr'] = array(
        '#type' => 'textfield',
        '#title' => t('Course Center '),
        '#prefix' => '<tr><td>',        
        '#suffix' => '</td>',
            //'#required' => TRUE,
    );

    $form['record'] ['roll'] = array(
        '#type' => 'textfield',
        '#title' => t('Roll No'),
        '#prefix' => '<td>',        
        '#suffix' => '</td></tr>',
    );

}

它工作正常,但显示此表单的额外 div。我可以通过以下查看页面源来看到这一点:

<table id="part-record"><fieldset  class=" fieldset titled collapsible collapsed">
      <legend><span class='fieldset-title'><span class='icon'></span><a href="/bim/bim_2014/admin/participant#fieldset" class="active">Add a Participant Record fieldset</a></span></legend>
        <div class='fieldset-content clear-block '>
      <tr><td><div  class="form-item form-item-labeled" id="edit-crs-ctr-wrapper">
      <label  for="edit-crs-ctr">Course Center : </label>
    <input type="text" maxlength="128" name="crs_ctr" id="edit-crs-ctr" value="" class="form-text fluid" />  </div>
</td><td><div  class="form-item form-item-labeled" id="edit-crs-wrapper">
      <label  for="edit-crs">Course: </label>
    <input type="text" maxlength="128" name="crs" id="edit-crs" value="" class="form-text fluid" />  </div>
</td><td><div  class="form-item form-item-labeled" id="edit-roll-wrapper">
      <label  for="edit-roll">Roll No: </label>
    <input type="text" maxlength="128" name="roll" id="edit-roll" value="" class="form-text fluid" />  </div>
</td></tr>    </div>
  </fieldset>
</table>

但是,在 form 标签之间,有一个空的 div 标签,用一些类包裹了 input 和 lebel 标签。这很烦人,因为我需要内联显示按钮。 如何删除该 div??

【问题讨论】:

  • 你指的是&lt;div class="fieldset-content clear-block吗?
  • 是的。事实上我不想添加任何额外的 div 例如
    ,
  • 我不知道如何在 drupal 中做到这一点。如果您需要 jQuery 解决方案,请告诉我。
  • 如何通过 jquery 删除#part-record id 中的所有 div?

标签: css drupal-6


【解决方案1】:

要删除 div 包装 label/input 标记试试这个:

if ( $('.form-text').parent().is('div.form-item.form-item-labeled') ) {
    $('.form-text').unwrap();
}

去除div包裹tr

if ( $('tr').parent().is('div.fieldset-content') ) {
    $('tr').unwrap();
}

【讨论】:

    猜你喜欢
    相关资源
    最近更新 更多
    热门标签