2012-04-06 9 views
0

Ich habe zwei Websites, die in asp.net Webforms geschrieben wird und der andere ist in asp.net mvc geschrieben. Ich habe eine Seite in Webforms verwendet jQuery Load, um Daten von beiden Projekten zu erhalten.Aufruf von asp.net mvc mit jQuery Laden von asp.net Webforms

-Code von der Seite in asp.net Webformulare:

$("#divFeedsPorTagMVC").load('http://localhost:50001/InfoMVC/?tag=java', function(){}); 

$("#divFeedsPorTagWebForms").load('http://localhost:50000/InfoWebForms.aspx?tag=java', function() {}}); 

Divs in aspx Seite:

<div id="divFeedsPorTagWebForms" ></div> 
<div id="divFeedsPorTagMVC" ></div> 

Das jQuery Aufruf WebForms gut funktioniert und füllt die "divFeedsPorTagWebForms" mit dem HTML-i brauchen.
Der Aufruf von jQuery an MVC2 tritt in die Indexfunktion des InfoMVCControllers (Debugmodus) ein, zeigt, dass das Tag param gut übergeben wird, füllt aber nicht das divFeedsPorTagMVC-div mit dem HTML, das es zurückgeben soll.

Irgendwelche Vorschläge?
Danke.

EDIT Controller:

public class InfoMVCController : Controller 
    { 
     private ServicioSORSS.ServicioSORSSClient _srvSORSS = new ServicioSORSSClient(); 

     // 
     // GET: /InfoWebForms/ 

     public ActionResult Index(string tag) 
     { 
      return View(_srvSORSS.ObtenerFeedsPorTag(tag)); 
     } 

    } 

Wenn ich die URL einfach kopieren und in der Navigationsleiste von Firefox fügen Sie die Daten alles, was ich nicht zurückkommen müssen!

+0

Haben Sie versucht, so etwas wie HttpFox oder Fiddler oder ein anderes Werkzeug, um zu sehen, welche Antwort Sie bekommen? –

+0

Was bekommen Sie, wenn Sie einfach "http: // localhost: 50001/InfoMVC /? Tag = java" in einem Browser laden? – AndrewR

+0

Können Sie den Controller-Code für die von Ihnen aufgerufene MVC-Aktionsmethode veröffentlichen? – mreyeros

Antwort

1

Sie stoßen auf ein Problem mit Same origin policy. Ihr Browser erlaubt das Laden nicht, da es von einer anderen Seite kommt.

Schauen Sie in den Standard $.ajax() function und verwenden Sie jsonp als dataType.

wird es sein, so etwas wie:

$.ajax({ 
    type: "GET", 
    url: "http://localhost:50001/InfoMVC/?tag=java", 
    dataType: "jsonp", 
    success: function(data){ 
     $('#divFeedsPorTagMVC').html(data); 
    } 
}); 
+0

muss ich dir sagen, ich wusste nichts darüber! und du hast Recht, das war mein Problem! Ich kann $ .ajax nicht benutzen, weil ich eine Recherche über jquery load mache! Ich habe am Ende veröffentlicht jede Website innerhalb von localhost auf diese Weise: ** http: // localhost/webforms/** und ** http: // localhost/mvc/** und auf diese Weise kann ich die Jquery laden ohne Probleme! Danke für Ihre Hilfe. – euther