Bonjour

Mon probleme est assez pointu : j'essaie de faire cohabiter des pages jscript et vbscript sur le même site.

certains modules sont écrits en jscript, de manière a pouvoir créer des objets.
En résumé, mes objets sont tous sur le modele :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 function monObjet() {
this.constructor.apply(this, arguments);
}
monObjet.prototype={
constructor : function constructor(){
 
// code constructeur
},
.... // d'autres propriétés et méthodes
}
Pour l'instancier en vbscript, j'ajoute une fonction jscript comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
 function CreateJSobject(obj){return eval('new ' + obj);}
Tout ceci est encapsulé dans une balise <script language="javascript" runat="server> et enregistré dans une page nommée "objet.asp", ce qui me permet, dans une page asp vbscript, de faire :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 <!--#include file="objet.asp" -->
<% dim o
set o=CreateJsObject("monObjet")
%>
ça, ça marche plutot bien.

Maintenant, dans une page jscript, si je fait la même chose, a savoir :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 <!--#include file="objet.asp" -->
<% var o = new monObjet() %>
ou même :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
 <% var o=CreateJsObject("monObjet") %>
j'obtient une erreur du style "this.constructor a la valeur Null ou n'est pas un objet."


j'avoue que j'y perd un peu mon latin (non non, ce n'est pas un langage de programmation).

Pour résumer, ma question est : comment puis-je instancier mes objets indiferemment en jscript et vbscript ?

Celui qui à la réponse ne gagne rien, mais :