希望了解如何使用WebMethod
将数据传递到aspx页面中的Angularjs
,我们在jQuery
中执行此操作。
下面是我用来将数据加载到ui-grid的代码,目前我只在页面加载时加载。我希望根据传递给webmethod的数据按需提供信息。
var myApp = angular.module('sampleapp', ['ui.grid', 'ui.grid.selection', 'ui.grid.exporter', 'ui.grid.resizeColumns']);
myApp.controller("appcontroller", function ($scope, $http) {
$scope.gridOptions = {
enableGridMenu: true,
exporterMenuCsv: true,
exporterMenuPdf: false,
exporterCsvFilename: 'ExportExceptionFile.csv',
data: 'BindDataTableusingJSON',
columnDefs: [
{
field: 'FileID', displayName: 'File ID', width: '90'
},
{
field: 'FileName', displayName: 'File Name', width: '180'
}]
};
$scope.BindDataTableusingJSON = {
"data": []
};
$http.post('WebForm1.aspx/GetUserData',
{
data:
{}
})
.success(function (data) {
var d = JSON.parse(data.d);
$scope.BindDataTableusingJSON = d;
});
}).config(function ($httpProvider) {
$httpProvider.defaults.headers.post = {};
$httpProvider.defaults.headers.post["Content-Type"] = "application/json; charset=utf-8";
});
我在aspx页面中的WebMethod
:
[WebMethod]
[ScriptMethod]
public static string GetUserData(string data) //wish to pass data here in 'string data'
{
return DataTableToJSONWithJavaScriptSerializer();
}
答案 0 :(得分:0)
尝试这样的事情:
$http.post('WebForm1.aspx/GetUserData',
{
{data: 'data value'}
})
.success(function (data) {
var d = JSON.parse(data.d);
$scope.BindDataTableusingJSON = d;
});