2008-10-05 9 views
0

J'ai rédigé une liste de contrôle GTD pour une révision hebdomadaire pour moi-même dans TiddlyWiki, en utilisant CheckboxPlugin. Après en avoir fini avec chaque semaine, je voudrais cliquer sur un lien pour décocher (réinitialiser) tous les éléments, donc c'est prêt pour la prochaine utilisation.Réinitialisation de tous les éléments dans une liste de contrôle TiddlyWiki/CheckboxPlugin

Je stocke les informations de vérification sous forme de balises sur une page de tiddler distincte. Je devrais pouvoir effacer toutes les balises de cette page et actualiser la page de la liste de contrôle, mais je n'ai pas encore trouvé de solution.

Je travaille généralement en C, C++ et Lisp, je suis en train d'apprendre à propos de Javascript. Quelqu'un peut-il offrir des conseils utiles?

(Et avant que quiconque ne l'indique, je l'ai regardé le ChecklistScript sur le même site. Il n'utilise les trucs CheckboxPlugin et n'est pas compatible avec elle.)

Répondre

0

il a fallu un certain temps, mais j'ai tout compris (grâce à la réponse de limites d'exposition pour l'inspiration):

<script label="(Reset All)" title="Reset all items" key="X"> 
     var tid='WeeklyReviewStepsChecklistItems'; 
     store.getTiddler(tid).tags=[]; 
     story.refreshTiddler(tid,null,true); 

     story.refreshTiddler('Weekly Review Steps',null,true); 
</script> 

cela ne fonctionne que parce que je Je stocke les tags dans un tiddler séparé, et en utilisant le InlineJavascriptPlugin.

1

Essayez cette (adapté de le code "resetall" de ChecklistScript):

<html><form style="display:inline"> 
    <input type="button" value="clear all" onclick=" 
     var tid='SomeTiddler'; 
     var list='tag1 [[tag 2]] tag3 tag4'; 
     var tags=list.readBracketedList(); 
     store.suspendNotifications(); 
     for (var t=0; t<tags.length; t++) 
      store.setTiddlerTag(tid,false,tags[t]); 
     store.resumeNotifications(); 
     story.refreshTiddler(tid,null,true); 
"></form></html> 
Questions connexes