Domanda

Sto cercando di fare riferimento a un file JavaScript, che contiene una funzione di tabella sorta, in un file PHP. Tutto funziona come dovrebbe, ma una volta che aggiungo il codice qui sotto alla mia pagina del report PHP provoca problemi con il formato delle schede sulla mia pagina di navigazione. Lo stesso problema si presenta se si aggiunge un document.write a caso al di fuori del codice PHP. Non è un problema enorme, ma piuttosto sgradevoli per l'utente.

C'è un modo migliore per fare riferimento al documento sorgente JavaScript che non interferire con il mio php formato pagina di navigazione? Mi sento come se ci fosse una semplice correzione che non afferro.

<script language="JavaScript" src="include/sorttable.js"></script>

utilizzato anche un echo il PHP all'interno dei tag PHP per effettuare la chiamata, stesso problema.

Ecco parte del codice di navigazione per le schede che la questione è formato venendo su.

<?php

//////////////////////////////////////////////////////////////////////////////////////////////////
function start_page_printer_friendly(
      $section = "home",
      $headContents = null,
      $bodyAttributes = null
)
//////////////////////////////////////////////////////////////////////////////////////////////////

{?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title><?php print $page_title; ?></title>
<link href="/trellis_portal/include/portal.css" media="screen"
   rel="Stylesheet" type="text/css" />
      <?php if ( ! is_null($headContents)) { print $headContents; } ?>
   </head>

<body onload="printpage();" <?php if ( ! is_null($bodyAttributes)) { print $bodyAttributes; } ?>>
   <script language="JavaScript">
      <!--
         function printpage() { window.print(); }
      -->
   </script>
<br />
<?php                     
}

//////////////////////////////////////////////////////////////////////////////////////////////////
function start_page( $section = "home",
                     $subsection = null,
                     $headContents = null,
                     $bodyAttributes = null
                   )
//////////////////////////////////////////////////////////////////////////////////////////////////
{   
    if (isset($_GET['printer']))
    {
        start_page_printer_friendly();
        return;
    }
   $section = strtolower($section);

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title><?php print $page_title; ?></title>

 <?php if ( ! is_null($headContents)) { print $headContents; } ?>
   </head>

<body class=" yui-skin-sam" <?php if ( ! is_null($bodyAttributes)) { print $bodyAttributes; } ?>>
<br />


<div id="header">
<ul>
<!-- 
   <li><a class="<?php print tabSelector($section, 'executive'); ?>"
      href="/trellis_portal/portal.php?section=executive&title=Executive">Executive</a></li>
   <li><a
      class="<?php print tabSelector($section, 'community'); ?>"
      href="/trellis_portal/portal.php?section=community&title=Community">Community</a></li>
-->   
   <li><a class="<?php print tabSelector($section, 'trellis'); ?>"
      href="/trellis_portal/portal.php?section=trellis&title=Trellis">Trellis</a></li>
<!-- 
È stato utile?

Soluzione

Io ancora non capisco che cosa ci si aspetta, ma una cosa che posso vedere già: tutto al di fuori è letteralmente trasposto, quindi

?>
<!DOCTYPE...

introdurrà uno spazio bianco extra (nuova riga) alla partenza prima di DOCTYPE.

Anche il finale dello script (->) genererà errore di sintassi JS. È valido HTML ma deve essere commentata. (// ->) in JS

Altri suggerimenti

Io non capisco la situazione ancora, ma è necessario essere consapevoli del fatto che non c'è niente di PHP legati alla vostra pagina, solo HTML / CSS / codice Javascript che è accaduto a essere generato da PHP . Quindi è necessario esaminare il codice HTML e vedere che cosa il problema è lì. Si può quindi consiglia di aggiornare la tua domanda con codice HTML.

SCRIPT tag, di per sé, non può influire elementi o il layout all'interno della pagina.

Il problema è probabilmente altrove. Per eseguire il debug questo vorrei ignorare il PHP e mettere a fuoco l'output HTML e cercare i tag non chiusi e valido markup ecc.

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