web-dev-qa-db-fra.com

restituer / exécuter du code jasvscript (qui est dans une chaîne php) dans virtuemart JDispatcher, par exemple: plgVmConfirmedOrder

Je veux rendre/exécuter du code javascript écrit dans virtuemart JDispatcher, par exemple: plgVmConfirmedOrder

par exemple:

$script='console.log("this is dummy script");jQuery.ajax({url:'',type:'post',success:function(){console.log("task has been done")}})';

function plgVmConfirmedOrder(VirtuemartCart $cart,$order){
      $document=JFactory::getDocument();
      $document->addScriptDeclaartion($script);// this is not working
      How to do?
}
1
user10984

Vous devez échapper correctement à votre javascript.

$script='console.log("this is dummy script");jQuery.ajax({url:\'\',type:\'post\',success:function(){console.log("task has been done")}})';

Et vous, déclaration mal épelée

$document->addScriptDeclaartion($script);

Et je suppose que votre plug-in vm est installé et activé et qu'il fonctionne. Si vous n'êtes pas sûr que votre événement se déclenche, changez votre code pour:

function plgVmConfirmedOrder(VirtuemartCart $cart,$order){
    echo "confirm order event fired";
    die();
}

Si cela ne fonctionne pas, votre problème est différent de celui de js.

1
jamesgarrett