4
J'utilise la fonction d'insertion de prototype pour apposer du code HTML qui contient <script>...</script>
. Et dans ce script, je définis une nouvelle fonction. Et pendant que je lis here Prototype exécute le script qui se trouve à l'intérieur des balises <script>
, puis le supprime, mais toutes les fonctions doivent rester accessibles. Mais à partir de ce moment, je ne peux pas exécuter ma nouvelle fonction.Comment insérer <script> avec Prototype?
$('some_id').insert({ bottom: '<script> ... </script>' });
Comment le résoudre? Le mieux serait qu'il ne supprime pas les balises <script>
.
EDIT:
Maintenant, je l'ai fait comme ceci:
var add_here = document.getElementById('prepayment_group_items');
var src = document.createElement('div');
src.innerHTML = 'a lot of html with script tags';
add_here.appendChild(src);
Vous pouvez inclure le script que vous essayez d'exécuter dans votre exemple. En outre, vous pouvez essayer d'ajouter: type = "text/javascript" à votre élément de script. – cjstehno
Le script contient quelque chose comme: function update_38172() {...}. Où ce numéro est généré par Rails. Cette fonction fonctionne quand j'ajoute à ce script: update_38172(); ça marche, mais seulement une fois. Après l'insertion est terminée '
Si vous souhaitez inclure JavaScript dans la tête, vous pourriez faire quelque chose comme ceci:
Cela crée une nouvelle balise SCRIPT et insère au fond de votre tête. Mais il serait beaucoup plus agréable si vous ajoutez un fichier JavaScript externe comme celui-ci:
Vous pouvez utiliser les fonctions que plus tard dans vos scripts.
Source
2010-03-22 20:41:52 2ndkauboy
try this ..
});
Source
2012-05-09 11:50:35 hardevine