Come posso mostrare solo i campi che hanno valori e nascondere i campi che non hanno valori?

StackOverflow https://stackoverflow.com/questions/5333974

  •  26-10-2019
  •  | 
  •  

Domanda

Sto cercando di ottenere questo codice per mostrare solo i campi che hanno valori, i campi che non hanno valori non sono stati pensati per essere visualizzato. Non sembra di essere al lavoro

Qualche idea di cosa sto facendo male?

La mia forma semplice test è qui http://www.healthybrighton.co.uk/ wse / node / 1844

/**
 * Build a table of submitted values
 *
 * @param $form_vals array Submitted form data
 * @param $select_mapping array Map select components to their value|label chocies
 * @return HTML of the themed table
 */       
function _format_form_state($form_vals = array(), $select_mapping) {
  $output = '';  
  $header = array();
  $rows = array();    

  if (!empty($form_vals)) {

    foreach ($form_vals as $component_name => $component_value) {
      $rows = array_merge(
        $rows,
        _add_component_row(
          $component_name,
          $component_value,
          0,
          $select_mapping
        )
      );
    }
  }



  $output .= theme('table', $header, $rows);
  return $output;
}
È stato utile?

Soluzione

/**
 * Build a table of submitted values
 *
 * @param $select_mapping array Map select components to their value|label chocies
 * @param $values array Submitted form data
 * @return HTML of the themed table
 */
function _format_form_state($select_mapping, $values = array()) {
  $header = array(t('First'), t('Second'), t('Third'), t('Fourth'));
  $rows = array();

  foreach ($values as $cname => $cval) {
    $rows[] = array($cname, $cval, 0, $select_mapping);
  }

  return theme_table($header, $rows);
}

$ select_mapping dovrebbe essere il primo argomento della funzione. Argomento con valore predefinito non deve essere preceduto da argomento senza un valore predefinito.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top