2009-08-14 13 views
2

J'essaie d'utiliser l'éditeur markitup sur mon site et j'ai un problème à essayer de comprendre ce que je dois faire pour soumettre la zone de texte à mon script côté serveur. Je suppose qu'il y a quelque chose de simple qui doit être fait mais mon manque de connaissances JS/JQuery rend vraiment difficile de trouver une réponsemarkitup wysiwyg avec un formulaire HTML standard

L'éditeur fonctionne bien, je veux juste utiliser mon propre formulaire et soumettre le bouton avec lui, cependant quand j'essaye de soumettre le formulaire je n'obtiens aucune des données textarea dans mon script.

Une idée de ce que je dois faire? Ceci est la min qui fonctionne (avant de soumettre)

In the Head of my HTML 
     <script type="text/javascript" > 
      <!-- 
      $(document).ready(function() { 
       $("#markItUp").markItUp(mySettings); 
      }); 
      --> 
     </script> 

And the body: 

    <form id="postpreview" name="newpost" action="/someurl" method="POST" /> 
    <input type="hidden" name="key1" value="val1" /> 
    <input type="hidden" name="key2" value="val2" /> 
    <textarea name="text" id="markItUp"></textarea> 
    <input id="SubmitPost" type="image" value="Continue" name="Doit" class="preview" src="/img/somimage" /> 
    </form> 

Comme je l'ai dit, tout avant les soumettre des œuvres mais une fois que je soumets, je ne reçois rien pour l'élément de données de formulaire « texte ».

J'ai essayé de le faire dans la tête:

 <script type="text/javascript" > 
      <!-- 
      $(document).ready(function() { 
       $("#markItUp").markItUp(mySettings); 
       $("#SubmitPost").click(function(){ 
        data = markItUp.textarea.value; 
        $.post("scripturl",{ key1: "value1", key2: "value2", text: data }); 
       }); 
      }); 
      --> 
    </script> 

J'ai aussi essayé:

 <script type="text/javascript" > 
      <!-- 
      $(document).ready(function() { 
       $("#markItUp").markItUp(mySettings); 
       $("#postpreview").submit(function(){ 
        var data = $("#markItUp").html(); 
        $.post("live",{ func: "posting", text: data }); 
        return false; 
      }); 
     }); 
     --> 
    </script> 

Et je n'ai pas de chance - la dernière tentative ci-dessus juste désactivé la forme (donc en cliquant sur les boutons de soumission ou de prévisualisation n'ont rien fait).

Des idées? Je suppose que c'est vraiment simple d'utiliser ma propre forme, mais je n'ai aucune idée de comment le faire.

TIA!

+0

Il ne fonctionne pas pour moi aussi. Les valeurs de chaque élément dans la forme sont bien envoyées par la méthode post et get, mais le textarea couvert par markitup n'a pas été envoyé. J'utilise python simple cgi server. – Bonn

Répondre

0

Si vous réglez pour textareas:

$("textarea").markItUp(mySettings); 

Vous ne devez pas faire quoi que ce soit pour obtenir le formulaire spécial à soumettre à votre script. Il suffit de mettre la destination dans l'attribut d'action:

<form name="whatever" method="POST" action="SCRIPT_URL"> 
+0

Je continue à penser à quelque chose de simple alors j'espérais que tu avais raison, mais ça n'a pas marché. Je mets dans la tête \t \t \t \t \t \t \t \t Et faites (la seule) textarea sur la page Et bien que la forme présente à nouveau, il n'y a pas de données de formulaire pour " text ":( – Chris

+0

vous pourriez aussi essayer de changer l'ID de textarea en" text " – imjoevasquez

+0

Non, cela n'a pas fonctionné non plus.Je ne peux pas croire à quel point cela s'avère difficile. Je ne peux surtout pas croire qu'ils n'ont pas un exemple sur leur propre site pour utiliser une forme normale :) – Chris

-1

Assurez-vous d'utiliser markitup.min.js fichier

+0

Puisque, selon le PO, l'éditeur fonctionne bien, je ne pense pas que ce soit le problème. –