2012-08-06 4 views
1

J'ai deux pages aspx à savoir one.aspx et two.aspx et j'ai un fichier javascript nommé link.jsComment communiquer entre deux pages aspx en utilisant js?

Maintenant, j'ai besoin de communiquer entre ces deux pages aspx en utilisant le fichier javascript comme intermédiaire.

Dans le fichier one.aspx j'ai un ModalPopupExtender et le contenu de son panneau est en loacted two.aspx -à-dire, dans "one.aspx":

<html> 
<head>  
<script type="text/javascript" src="link.js"></script> 

<script type="type="text/javascript"> 
    function test(){ 
    var str=callPopup(); 
    document.getElementById('pnlPopUp').innerHtml = str; 
    } 
</script> 
</head> 
<body> 
<ajaxToolkit:ModalPopupExtender ID="popup1" runat="server" TargetControlID="btnOK" CancelControlID="btnCancel" PopupControlID="pnlPopUp"></ajaxToolkit:ModalPopupExtender> 

<asp:Panel ID="pnlPopUp" runat="server"></asp:Panel> 

    </body> 
</html> 

dans "two.aspx":

<html> 
    <head> 
    <script type="text/javascript" src="link.js"></script> 
    </head> 
    <body> 
<asp:Panel ID="pPanel1" runat="server"> 
    <table> 
     <tr> 
      <td> 
       <p>test</p> 
      </td> 
      <td> 
       <asp:Button ID="BtnTest" runat="server" Text="Click" OnClientClick="javascript:alert('hello world..!'); return false;" /> 
      </td> 
     </tr> 
    </table> 
</asp:Panel> </body> </html> 

dans link.js:

function callPopup() { 
    var s = document.getElementById('pPanel1').innerHtml; 
    return s; 
} 

je suis en mesure d'appeler callPopup() de one.aspx mais incapable d'obtenir le contenu de la page two.aspx. aidez-moi s'il vous plaît.

Merci d'avance.

+2

Vous devez fournir plus d'informations. Vous voulez le faire via un post ou via Ajax? Utilisez-vous MVC ou WebForms? Plus d'informations sont nécessaires. Dans quel contexte résident les pages 1 et 2? Quel est le but de ce que vous essayez d'accomplir? Qu'avez-vous déjà essayé? –

+0

salut .. j'ai édité ma question, s'il vous plaît examiner maintenant .. – Hulk

Répondre

0

Je vais vous donner 2 façons d'accomplir cela.

  1. Utilisez SignalR pour diffuser vers plusieurs clients. En savoir plus sur https://github.com/SignalR/SignalR

  2. (plus bas niveau SignalR prend habituellement soin de tout cela pour vous.)

Essayez d'utiliser Ajax pour appeler un côté serveur de fonction: http://www.w3schools.com/ajax/default.asp. Vous pouvez alors avoir la fonction appelée écriture côté serveur sur une source de sortie; Quelques exemples: fichier, session, cookie.

Ensuite, demandez à l'autre page Web de lire en permanence à partir de la même source de sortie (fichier, session ou cookie) via Ajax.

0

Êtes-vous sûr que votre architecture est correcte? Y at-il vraiment une bonne raison pour laquelle vous avez besoin de deux.aspx - ne peut pas one.aspx tout faire? Ayant déjà utilisé AjaxToolkit par le passé, j'ai du mal à trouver une bonne raison de l'utiliser dans le développement web moderne. Avez-vous regardé http://knockoutjs.com/ ou Backbone? Ils valent vraiment le coup d'oeil.

Je sais que cela ne répond pas à votre question en soi, J'essaie juste de vous sauver d'un monde de douleur.

+0

salut .. la raison derrière l'utilisation de deux page aspx est, si je place n nombre de popups (par exemple, 20 à 40) dans un aspx, il sera prendre plus de temps pour charger .... – Hulk

Questions connexes