0

location.aspx/getData の背後にあるメソッドを持つページ locations.aspx があります。コードを使用するとき

$http.jsonp($scope.url)
    .success(function (data, status, headers, config) {
        alert(data);
}).error(function (data, status, headers, config) {
    $scope.status = status;
});

$scope.url が locations.aspx/getData の場合、aspx ページの html ページをロードしますが、メソッドにはアクセスしません。を使用してメソッドにアクセスできます

$.ajax({
    type: "POST",
    url: $scope.url,
    data: {},
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function (p) {
    var temp = $.parseJSON(p.d);
    $scope.allItems.push(temp);
},
    error: function () {
        alert('error');
    }
});

ただし、ビュー側でデータが更新またはバインドされることはありません。htmlの例は

    <select ng-model="selectLocation" id="selectLocation" ng-change="onLocationChange()">
                        <option></option>
                        <option ng-repeat="l in allItems">{{l.location}}</option>
</select>

ajax 呼び出し allItems 配列にはアイテムが含まれていますが、ビューは更新されません。

私のajax呼び出しヘッダーは

リクエスト URL:localhost:41796/locations.aspx/getData

リクエスト方法:POST

ステータスコード:200 OK

Request Headersソースを見る

Accept:application/json, text/javascript, / ; q=0.01

コンテンツ タイプ:アプリケーション/json; 文字セット=utf-8

Response Headersview source Cache-Control:private, max-age=0

接続:閉じる

コンテンツの長さ:270

コンテンツ タイプ:アプリケーション/json; 文字セット=utf-8

そして私の $http ヘッダーは

リクエスト URL:localhost:41796/locations.aspx/getData

リクエスト方法:GET

ステータスコード:200 OK

リクエスト Headersview が解析されました

GET /locations.aspx/getData HTTP/1.1

ホスト: ローカルホスト:41796

接続: キープアライブ

応答ヘッダービューが解析されました

HTTP/1.1 200 OK

サーバー: ASP.NET 開発サーバー/10.0.0.0

キャッシュ制御: プライベート

コンテンツ タイプ: テキスト/html; 文字セット=utf-8

コンテンツの長さ: 7177

接続: 閉じる

4

1 に答える 1