0

2つのサイトがあります。1つはasp.netwebformsで記述され、もう1つはasp.netmvc2で記述されています。jQueryLoadを使用して両方のプロジェクトからデータを取得するWebformsのページがあります。

asp.net Webフォームのページからのコード:

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

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

aspxページのDiv:

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

WebFormsへのjQuery呼び出しはうまく機能し、「divFeedsPorTagWebForms」に必要なHTMLを入力します。
MVC2へのjQuery呼び出しは、InfoMVCController(デバッグモード)のIndex関数に入り、タグparamが適切に渡されていることを示しますが、「divFeedsPorTagMVC」divに返されると想定されるHTMLを入力しません。

助言がありますか?
ありがとう。

コントローラー の編集:

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

        //
        // GET: /InfoWebForms/

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

    }  

URLをコピーしてFirefoxのナビゲーションバーに貼り付けると、必要なすべてのデータが返されます。

4

1 に答える 1

1

Same origin policyで問題が発生しています。別のサイトから来ているため、ブラウザーは読み込みを許可していません。

標準の$.ajax() 関数を調べて、dataType として使用jsonpします。

次のようになります。

$.ajax({
    type: "GET",
    url: "http://localhost:50001/InfoMVC/?tag=java",
    dataType: "jsonp",
    success: function(data){
        $('#divFeedsPorTagMVC').html(data);
    }
});
于 2012-04-06T20:03:31.190 に答える