2012-01-02 4 views
5

Je possède ce code:gestionnaire de clic avec l'éditeur de dojo

<!DOCTYPE HTML> 
<html> 
<head> 
<script 
    src="http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dojo/dojo.js" 
    type="text/javascript" djConfig="parseOnLoad: true"></script> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script> 

<script type="text/javascript"> 
var myButton = dojo.byId("btn"); 
dojo.connect(myButton, "onclick", function (evt) { 
    require(["dojo/_base/xhr", "dojo/parser", "dojo/dom"], function (xhr, parser, dom) { 
     xhr.get({ 
      url: "teste_apagar.php", 
      load: function (data) { 
       alert("as"); 
       var um = []; 
       dijit.registry.filter(function(w){ 
        if(dojo.indexOf(um)){ 
         w.destroyRecursive(); 
        } 
       }); 
       dom.byId("result").innerHTML = data; 
       parser.parse("result"); 
      } 
     }); 
    }); 
}); 
</script> 

</head> 

<body class="claro"> 
<script type="text/javascript"> 
    dojo.require("dijit.Editor"); 
</script> 

<div id="btn" style="width: 100px; height: 30px; margin-bottom: 150px; background-color: red;">load</div> 
    <div id="result"> 
    </div> 
</body> 
</html> 

Cependant, quand je clique en bouton gras ou en italique, même avec un clic droit dans la barre supérieure avec les options de mise en forme, la demande ajax est rechargé. Donc, l'éditeur dojo est chargé quand j'appuie sur la barre d'outils de formatage

Une idée? demohere

Répondre

3

Vous devez exécuter le code Dojo une fois que Dojo est chargé. Voir http://jsbin.com/ukesup/7. De la façon dont vous faites le 'myButton' est null beacuse dojo n'est pas encore chargé et dojo.byId renvoie une valeur invalide ou n'existe tout simplement pas.

N'oubliez pas de charger les widgets requis une fois dojo chargé. Dans l'échantillon j'ai utilisé le Dojo < 1.7 façon:

dojo.addOnLoad(function() { 
    dojo.require("dijit.Editor"); 
    ... 
    more code here 
    ... 
}); 
+0

dieu. j'ai oublié le dojo.addOnLoad (- merci l'homme – anvd

Questions connexes