Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    HTMLAREA + document.form.submit()

    Salve a tutti.
    Premetto che sto modificando uno script esistente in PHP dove è richiesto l'invio in POST di un form con delle text area personalizzate con HTMLAREA.
    Il problema è questo:
    Inviando il form con il classico pulsante
    <input type="submit" name="Submit" value="Invia">
    il form funziona correttamente e tutti i campi vengono passati in post.
    Io ho però bisogno di aggiungere l'evento "onClick" su due radio box ed inviare contestualmente il form. Per fare questo avevo pensato a javascript utilizzando il codice:
    <input name="tipo" type="radio" value="2" onClick="javascript:document.getElementById('form1 ').submit();">
    Così però riesco ad inviare tutto il form in post, tranne le textarea personalizzate con HTMLAREA (se provo a togliere la personalizzazione, le textarea vengono correttamente inviate).
    Qualcuno ha idea di come posso risolvere questo problema?
    Grazie
    Umbria e Sapori
    www.umbriaesapori.it

  2. #2
    non so come sono fatte le HTMLAREA ma suppongo siano il solito wysiwyg, può essere che al submit lancino una funzione che popoli le textarea corrispondenti con il contenuto del HTMLAREA.
    Quello che puoi provare e a lanciare la funzione legata al submit della form prima del submit():

    codice:
    <input name="tipo" type="radio" value="2" onClick="submitForm()">
    con il codice

    codice:
    function submitForm(){
       var myform = document.getElementById('form1');
       var evtFunct = myform.onsubmit;
       if(evtFunct)
           evtFunct();
       myform.submit();
    }
    Non sono sicuro che però funzioni, in alternativa devi vedere se l'oggetto HTMLArea offre le funzioni per inserire l'HTML corrispondente nella TEXTAREA a cui è legata, ma devi cercare la documentazione dello script.
    I DON'T Double Click!

  3. #3
    Fammi capire:
    - se provi a fare onClick="this.form.submit();" ti dà lo stesso risultato ??
    - se stampi con un print_r($_POST) la variabile, non contiene le textarea ??
    Hai assegnato sia id che name alle textarea ??
    Il mio futuro ?? Io lo conosco, è il PARTY !! (Party Man)
    ...e ricordati che prima o poi il po-chi gira (Il Maestro)

  4. #4
    Ho provato la funzione di "artorius" ed in parte funziona. Le textarea personalizzate sono due e una la passa con il valore aggiornato mentre l'altra sempre con il valore corrente. Mi spiego meglio. Con HtmlArea è possibile creare diverse configurazioni e assegnarle a diverse textarea (premetto che ho già provato a creare le due textarea direttamente dalla stessa configurazione ma il risultato è lo stesso).
    Il file che apro pesca dei dati da un db, li scrive nel form (comprese le textarea) e poi vengono inviati in post (vengono fatti i dovuti controlli in PHP) e se tutto corretto vengono salvati nel database.
    Nel momento in cui sottometto il form in javascript, le textarea non passano i valori (che sono stati rieditati) e mantengono quelli del database (passandoli invece con il pulsante submit tutto funziona correttamente).
    Con lo script di "artorius" una delle due textarea viene aggiornata (se rieditata) l'altra no!!!
    Sto controllando la documentazione di HTMLAREA ma non riesco a trovare nulla che faccia al caso mio.
    Umbria e Sapori
    www.umbriaesapori.it

  5. #5
    Posto il codice javascript modificato, ho notato che invertendo le due righe:
    HTMLArea.replace('MyTextarea2', config);
    HTMLArea.replace('MyTextarea', config_descrizione);
    la prima (quella con id "MyTextarea2") non invia i dati mentre la seconda si. invertendo appunto queste due righe di codice:
    HTMLArea.replace('MyTextarea', config_descrizione);
    HTMLArea.replace('MyTextarea2', config);
    è "MyTextarea" a non inviare i dati.
    <script type="text/javascript">
    function submitForm(){
    var myform = document.getElementById('form1');
    var evtFunct = myform.onsubmit;
    if(evtFunct)
    evtFunct();
    myform.submit();
    }

    var editor = null;
    function initEditor() {

    var config_descrizione = new HTMLArea.Config(); // create a new configuration object
    // having all the default values
    //config_descrizione.width = '300px';
    config_descrizione.height = '300px';

    // the following sets a style for the page body (black text on yellow page)
    // and makes all paragraphs be bold by default
    config_descrizione.pageStyle =
    'body { color: black; font-family: verdana,sans-serif } ' +
    'p { font-width: bold; } ';
    config_descrizione.toolbar = [
    ['fontname', 'space',
    'fontsize', 'space',
    'formatblock', 'space',
    "justifyleft", "justifycenter", "justifyright", "separator",
    "outdent", "indent", "separator",
    'bold', 'italic', 'underline',"separator","inserthorizontalrule"],
    [ "createlink", 'space', "insertimage", 'space', "inserttable", "separator", "popupeditor", "htmlmode"]
    ];

    var config = new HTMLArea.Config(); // create a new configuration object
    // having all the default values
    //config.width = '300px';
    config.height = '100px';

    // the following sets a style for the page body (black text on yellow page)
    // and makes all paragraphs be bold by default
    config.pageStyle =
    'body { color: black; font-family: verdana,sans-serif } ' +
    'p { font-width: bold; } ';
    config.toolbar = [
    ["justifyleft", "justifycenter", "justifyright", 'space',
    "htmlmode", "separator",
    'bold', 'italic', 'underline']
    ];

    //---------------------------------------------------------------------


    HTMLArea.replace('MyTextarea2', config);
    HTMLArea.replace('MyTextarea', config_descrizione);
    return false;
    }
    HTMLArea.onload = initEditor;
    </script>
    Umbria e Sapori
    www.umbriaesapori.it

  6. #6
    Ho risolto così:
    function submitForm()
    {
    document.getElementById('form1').onsubmit();
    document.getElementById('form1').submit();
    }
    E la richiamo con:
    <input name="tipo" type="radio" value="3" onClick="return submitForm();">
    Così funzionano entrambe le textarea personalizzzate con HTMLAREA.
    Umbria e Sapori
    www.umbriaesapori.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 © 2025 vBulletin Solutions, Inc. All rights reserved.