Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Zend e script layout

  1. #1

    Zend e script layout

    Ciao a tutti, ho un dubbio:

    in tutte le mie viste (Zend FMK) ho qualche cosa del tipo:

    Codice PHP:

    (add.phtml)

    <head>
            <?php echo $this->headMeta(); ?>
            <?php echo $this->headTitle(); ?>

            <script type="text/javascript">
                
               $(function(){

                 var loaderHtml = '<div  style="text-align:center;width:150px;display:none;">[img]<?php echo $this->baseUrl();?>/css/images/ajax-loader.gif[/img]</div>';
                 $('dd#city-element').prepend(loaderHtml);  // city parent
                 $('dd#town-element').prepend(loaderHtml); //townparrent

                 $('select#state').val('');
                 $('select#city option').remove();
                 $('select#town option').remove();
                 $('select#town').append('<option value="">Select town first</option>');
                 $('select#city').append('<option value="">Select city </option>');

                 $("button, input:submit, a", ".divRegister").button();
                 $("button, input:submit, a", ".divRegister").click(function() { 
                
                    var validMess = requestValidation ();
                    
                    $('input,select').each (function(){
                        doValidationMess($(this), validMess);
                    });
    ......

                function changeTownList(cityId){

                   ......
                }

                function changeCityList(stateId){

                    $('dd#city-element div').show();
                    $('select#city').hide();

    ......

                       })
                }

            });
           </script>

        </head>
        <body>
        
     <h1>Add New User </h1>
           <div class="divRegister content">
               <?php echo $this->form ;?>
    Ora ho provato a creare una pagina di layout (layout/default.phtml) che verrà utilizzata da tutte le viste ... per definire HTML ed HEADER comuni e gestire nelle viste solo il contenuto....

    tutto OK per le viste che avevo già creato, tranne per quella postata in precedenza (troppi script all'interno che non so come gestire)

    il problema è questo:

    come modifico la mia pagina add.phtml postata in precedenza?

    In tutte le altre pagine inserisco gli script usati della vista facendo qualche cosa del tipo:

    Codice PHP:
             
        <? $this->headScript()->appendFile($this->baseUrl('/js/loginVerifiction.js')); ?>

    <h1>Login </h1>
    <div class="divLogin content">
        <?php echo $this->form ;?>
        
        <div style="padding-left:40px;">
            <span>[url="register"] Register [/url]</span> / <span>[url="forgot"] Forgot password [/url]</span>
            

            <span class="errors" > <?php echo $this->errorMessage;  ?></span>
            <input id="hndmess" type="hidden" value="<?php echo $this->message;  ?>" />
        </div>

    </div>

    Ma quando ho script tipo quelli inseriti nella mia pagina add.phtml come posso fare??

    Grazie
    Iceberg

  2. #2
    Ciao,
    scusa ma dove sta il problema.
    Farai nello stesso modo che ha di diverso
    add.phtml ?




    Ps
    Solitamente l'inclusione di js e css viene fatta
    dinamicamente tramite plugin.
    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  3. #3
    Intendevo dire che finchè l'inclusione è qualche cosa del tipo

    <? $this->headScript()->appendFile($this->baseUrl('/js/loginVerifiction.js')); ?>

    tutto OK!

    ma quando ho:

    <head>
    <?php echo $this->headMeta(); ?>
    <?php echo $this->headTitle(); ?>

    <script type="text/javascript">

    $(function(){

    var loaderHtml = '<div style="text-align:center;width:150px;display:none;">[img]<?php echo $this->baseUrl();?>/css/images/ajax-loader.gif[/img]</div>';
    $('dd#city-element').prepend(loaderHtml); // city parent
    $('dd#town-element').prepend(loaderHtml); //townparrent

    $('select#state').val('');
    $('select#city option').remove();
    $('select#town option').remove();
    $('select#town').append('<option value="">Select town first</option>');
    $('select#city').append('<option value="">Select city </option>');

    $("button, input:submit, a", ".divRegister").button();
    $("button, input:submit, a", ".divRegister").click(function() {

    var validMess = r
    ....



    e nella mia vista non ho più l'header in quanto gestito dal layout/default.... cosa faccio nella vista?

    Grazie
    Iceberg

  4. #4
    codice:
    <head>
    <?php echo $this->headMeta(); ?>
    <?php echo $this->headTitle(); ?>
    
    <script type="text/javascript">
    
    $(function(){
    
    var loaderHtml = '<div style="text-align:center;width:150px;display:none;">[img]<?php echo $this->baseUrl();?>/css/images/ajax-loader.gif[/img]</div>';
    $('dd#city-element').prepend(loaderHtml); // city parent
    $('dd#town-element').prepend(loaderHtml); //townparrent
    
    $('select#state').val('');
    $('select#city option').remove();
    $('select#town option').remove();
    $('select#town').append('<option value="">Select town first</option>');
    $('select#city').append('<option value="">Select city </option>');
    
    $("button, input:submit, a", ".divRegister").button();
    $("button, input:submit, a", ".divRegister").click(function() {
    
    var validMess = r

    ma sto codice dove ce l'hai continuo a non capire ......

    non vorrai mica includere quel codice in una view
    se fai una cosa simile sbagli qc.


    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  5. #5
    Quel codice effettivamente l'ho nella view... dici che è sbagliato??

    praticamente avevo una view

    con

    <HTML>
    ...
    <HEAD>
    ...

    </HEAD>
    ...


    ora ho spostato in una pagina default.phtml l'header ecc.... questa pagina verrà utilzzata da tutte le view (nelle quali terrò quindi solo il content)... quindi, tutto quel blocco di script che avevo nella mia view (nell'header appunto), come lo gestisco?

    Grazie
    Iceberg

  6. #6
    Originariamente inviato da iceberg
    Quel codice effettivamente l'ho nella view... dici che è sbagliato??

    praticamente avevo una view

    con

    <HTML>
    ...
    <HEAD>
    ...

    </HEAD>
    ...


    ora ho spostato in una pagina default.phtml l'header ecc.... questa pagina verrà utilzzata da tutte le view (nelle quali terrò quindi solo il content)... quindi, tutto quel blocco di script che avevo nella mia view (nell'header appunto), come lo gestisco?

    Grazie
    Devi utilizzare il layout di zend.
    Il layout altro non è che il wrapper
    dove andra html head etc
    Le views ti servono appunto per mettere
    il content

    http://zendframework.com/manual/en/z...uickstart.html
    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  7. #7
    Ecco è proprio quello che sto dicendo!!

    Ho il mio bel layout

    ovvero layout/scripts/default.phtml

    qui ho tutto il mio bel HTML HEAD ecc...

    ora

    se in una vista ho del codice JS (che viene usato solo da quella vista .... quindi non legato alla pagina default generica) .... come inserisco quel codice nella mia vista (che ovviamente eredita il layout indicato precedentemente)

    nei miei post ho inserito un esempio di vista che contiene del codice JS che non so come collocare/gestire

    Grazie
    Iceberg

  8. #8
    e come lo inserisci ad esempio
    con un semplicissimo
    <script type="text/javascript" src="mioscript.js"></script>
    oppure se lo utilizzi solo in quella view in line.


    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  9. #9
    Cosa intendi con inline??


    lo utilizzo solo nella view, cosa dovrei inserire (per quella view) "in line" .... ipotizzando tutto il JS che ho postato?

    Grazie mille per l'aiuto!
    Iceberg

  10. #10
    Pe r inline intendo
    <script type="text/javascript">
    // js
    </script>
    se lo utilizzi solo in quella view perchè no
    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.