2009-07-19 7 views
0

je dois définir un tableau JavaScript à partir du code derrière l'utilisation de C# dans Asp.Net2008 le problème est maintenant que quand j'enregistrer le tableau en utilisant le code C#:enregistrer javascript tableau de code derrière facebook

string ArrVal = ""; 
     string Sep = ""; 
     for (int i = 0; i < 17; i++) 
     { 
      ArrVal += Sep + FilesCount[i].ToString(); 
      Sep = ","; 
     }   
     Page.ClientScript.RegisterArrayDeclaration("FilesArr", ArrVal); 

et le code client est:

var FileName = FilesArr[0]; 

dans toute application web, il fonctionne bien, mais à ma demande qui est libérée dans la plate-forme Facebook le code Javascript ne voit pas le tableau, mais dans l'application web ordinaire du code javscript voir le tableau enregistré

quelqu'un peut-il me dire pourquoi ce problème se produit?

Merci d'avance pour toute réponse et essai.

Répondre

0
  1. Développez-vous une application IFrame? Si tel est le cas, vous avez peut-être rencontré le problème P3P, où la session ASP.Net n'est pas transmise du cadre principal à l'IFrame. Jetez un oeil à this link pour une solution possible.
  2. Une autre chose à comprendre est quelle est la nature du problème: est-ce que le tableau n'est pas passé du code-derrière à JavaScript, ou qu'il est passé, mais sans valeurs? Essayez d'ajouter un alert(FilesArr); tout en haut de votre script, et voyez s'il imprime object ou une erreur JavaScript.
  3. Enfin, juste pour qualifier le problème, testez-le dans un autre navigateur. Est-ce juste un problème d'IE, ou cela se produit-il aussi dans Firefox? Si c'est cohérent entre les navigateurs, vous savez que vous devez vous concentrer sur le côté ASP.Net des choses :)

J'espère que l'un de ceux-ci a aidé.

+0

Je suis déjà en utilisant ce code de surcharger la méthode onOprerender() et le problème existait et je l'ai essayé dans IE pas firefox je ne savais pas quel est le résultat dans le firefox ou d'autres navigateurs et le tableau n'est pas déclaré du tout et javascript erreur signalée pas un tableau vide – Ahmy

+0

Essayez de forcer le problème. 1. Ajoutez une variable chaîne à la classe de pages: protected string FilesArr; 2. Dans le Page_Load ajouter quelque chose comme: FilesArr = "var FilesArr = {1,2,3,4};"; 3. Dans votre page HTML, en haut du script, ajoutez ce qui suit: <% Response.Write (FilesArr); %> Exécutez la page maintenant et vérifiez si la baie est disponible. Bonne chance. –

Questions connexes