Visualizzazione dei risultati da 1 a 3 su 3

Discussione: modificare inline-edit

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074

    modificare inline-edit

    Ho un problema - non essendo espertissimo di JS... - nel modificare uno script.
    Dunque, il problema è questo: sto sviluppando un CMS, utilizzando una funzione di inline-edit, per renderlo più user-friendly. Però, poichè il sito prevede molte pagine, ed è per di più in 4 lingue, vorrei evitare di fare centinaia di pagine diverse, una per ogni lingua/pagina.
    Perciò, lavorando interamente in php, ho pensato di fare un'unica pagina, a cui passo una variabile (che identifica la pagina), ed in cui sono presenti quattro diversi box di testo, uno per ciascuna lingua.
    Il problema mi sorge quando devo passare i dati alla pagina .php che li processa, perchè - appunto - utilizzando un'unica pagina ho bisogno di identificare a quale contenuto faccia riferimento, ed a quale lingua!
    Questo è il codice html (ne posto uno, ma sono 4 nella pagina):
    Codice PHP:
    <div class='inline-edit'>
        <div class='display'><?PHP
              
    echo $text_fr;
          
    ?></div>
        <div class='form'>
            <div><div><textarea class='text'></textarea><input name="lang" type="hidden" value="fr"><input name="page" type="hidden" value="<?PHP echo $page?>"></div></div>
            <div>
                <input type='submit' class='save' value=' Save ' />
                <input type='submit' class='cancel' value=' Cancel ' />
            </div>
        </div>
    </div>
    I due campi di input hidden, lang e page, li ho aggiunti io (rispetto al modello originale), perchè sono le variabili che mi servono - vedi sopra - per identificare la pagina di riferimento.
    Il codice JS (originale) è questo:
    Codice PHP:
    ;(function($){
        $.
    fn.inlineEdit = function(options){
            var 
    text;
            var 
    settings = $.extend({
                
    href'ajax.php',
                
    display'.display',
                
    form'.form',
                
    text'.text',
                
    save'.save',
                
    cancel'.cancel',
                
    loadtxt'Loading...',
                
    hover'none-error-404'
            
    },options||{});

            
    this.each(function(){
                
    // Display Actions
                
    $(settings.displaythis).mouseover(function(){
                    $(
    this).addClass(settings.hover);
                }).
    mouseout(function(){
                    $(
    this).removeClass(settings.hover);
                }).
    click(function(){
                    
    text = $(this).html();
                    $(
    this).hide().siblings(settings.form).show().find(settings.text).val(text).focus();
                    return 
    false;
                });

                
    // Cancel Actions
                
    $(settings.cancelthis).click(function(){
                    $(
    this).parents(settings.form).hide().siblings(settings.display).show();
                    return 
    false;
                });

                
    // Save Actions
                
    $(settings.savethis).click(function(){
                    
    text = $(this).parents(settings.form).find(settings.text).val();
                    $(
    this).parents(settings.form).hide().siblings(settings.display).html(settings.loadtxt)
                        .
    load(settings.href, {texttext}).show();
                    return 
    false;
                });
            });
        };
    })(
    jQuery); 
    Naturalmente, sia questo che JQuery vengono richiamati nella pagina... che li inizializza con il codice:
    Codice PHP:
    <script type='text/javascript'>
    $(
    document).ready(function(){
        $(
    '.inline-edit').inlineEdit({hover'hover'});
    });
    </script> 
    Come dicevo, il mio problema è mettere mano al JavaScript, per passare le variabili alla pagina ajax.php che deve processare i dati.
    Ho pensato che dovrei, intanto, aggiungere alla variabile settings altre due voci, ad es.
    lang: '.form.lang';
    page: '.form.page';
    (e già non so se è esatto...), ma poi dovrei fare in modo che queste variabili siano passate alla pagina php, quindi dovrei modificare la funzione save ...
    Ma come fare?
    Per quanto riguarda la variabile page, avrei una soluzione sporca, ovvero mettere il codice JavaScript nella pagina, e non in un file esterno, e farlo scrivere da php, in modo che - ad es. - la riga:
    Codice PHP:
    href'ajax.php'
    venga scritta di volta in volta così:
    Codice PHP:
    href'ajax.php?page=miapagina'
    dove miapagina è la variabile che identifica il target. Ma per la lingua, come fare?
    Non vorrei incasinare tutto...
    Mi serve quindi un'aiuto esperto.
    Qualcuno si fa avanti?
    Grazie in anticipo...
    metatad
    graphic & web design

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074
    up?...
    metatad
    graphic & web design

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074
    proprio nessuno che sa darmi una mano?
    Devo provare sui forum stranieri?
    metatad
    graphic & web design

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.