2009-06-24 8 views
0

Angenommen, ich rief Index() von der HomeController, die die Ansicht Index.aspx zurückgibt, kann jquery in JavaScript javascript auf Index.aspx rufen Sie eine Methode in einem anderen Controller (ExternalController)?Können Sie eine Methode von einem Controller aufrufen, wenn die View von einem anderen Controller erstellt wurde?

$.ajax({ 
      type: "POST", 
      url: "/Home/sayHi", 
      dataType: "json", 
      data:({ currRow : centerPost[0], offset : ((-1 * Math.ceil(numRows/2)) + 1) }), 
      error:function(request){alert(request.statusText)}, 
      success:function(result){alert(result)} 
     }).responseText; 

gab mir keine Fehler, wurde die Seite von dem Homecontroller

$.ajax({ 
      type: "POST", 
      url: "/Row/getRowName", 
      dataType: "json", 
      data:({ currRow : centerPost[0], offset : ((-1 * Math.ceil(numRows/2)) + 1) }), 
      error:function(request){alert(request.statusText)}, 
      success:function(result){alert(result)} 
     }).responseText; 

gab mir ein Internal Server Error ...

nur fragen, ob es mir Aufruf gemacht werden kann, weil ich Ein anderer Controller als der, von dem die Ansicht gerendert wurde

Antwort

2

Es sollte keinen Grund geben, einen anderen Controller aufzurufen als den, der die aktuelle Ansicht gerendert hat zu irgendwelchen Fehlern führen. Ein Controller ist nur ein Handler eines gemeinsamen Satzes von Befehlen. Ob diese Befehle von der Adressleiste eines Browsers, von einem Hyperlink oder von einem jQuery-Ajax-Aufruf ausgegeben werden, spielt keine Rolle. Alle drei verwenden dasselbe Protokoll, um Befehle an den Controller auszugeben.

Meine Vermutung ist, dass mit Ihrem Code etwas nicht stimmt, das den internen Serverfehler verursacht. Haben Sie versucht, direkt zu/Row/getRowName im Browser zu gehen, um zu sehen, was passiert? Funktioniert es mit GET und POST, nur POST, nur GET? Perhapse Sie geben einen POST aus, wenn nur GET unterstützt wird? Ich würde mehr Informationen benötigen, bevor ich dir weiter helfen könnte.

Verwandte Themen