我的 C# 中有一个 Web 方法,它通过 Jquery ajax 方法调用。 Web 方法应该将一个对象返回给将用于填充的 Jquery。
我已经尝试返回一个 JsonResult 对象,实际的对象,但似乎没有任何效果!我没有使用 MVC(不幸的是)。有没有一种方法可以从我的 Web 方法返回一个可供我的 AJAX 方法使用的对象?
这是我的 JQuery AJAX 方法的链接
http://pastebin.com/tRSaY5rG
http://pastebin.com/WajXyPMM
谢谢!!
最佳答案
我使用 JQuery 从数据库中获取结果,并在页面上使用这些项目填充 UL。这是您要找的吗?
Javascript
//Set up Approve Requests Page
$("#approveRequests").bind('pageAnimationEnd', function () { getRequestList(); return false; });
//Gets the list of requests
function getRequestList() {
// call server-side webmethod using jQuery
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "Index.aspx/GetOrdersForApproving",
data: "{ }", // send an empty object for calls with no parameters
dataType: "json",
success: displayRequests,
failure: reportError
});
}
//displays the requests in the ul
function displayRequests(result) {
// ASP.NET encapsulates JSON responses in a property "d"
if (result.hasOwnProperty("d")) { result = result.d; }
// iterate through player list and add info to the markup
var ul = $("#requestsForApproval");
for (i = 0; i <h2>" + result[i].Supplier + "</h2>," + result[i].Description + "," + result[i].Value + "");
var li = $(""
+ "<h3>" + result[i].OrderID + " - " + result[i].Supplier + "</h3>"
+ ""
+ ""
+ result[i].Description
+ ""
+ " "
+ ""
+ ""
+ ""
+ "Quant: " + result[i].Quantity
+ ""
+ ""
+ "Price: " + result[i].UnitPrice
+ ""
+ ""
+ "Total: " + result[i].Value
+ ""
+ ""
+ ""
+ ""
+ " "
+ "<ul>Approve"
+ "Reject</ul>"
+ ""
+ ""
+ "");
ul.append(li);
}
ASPX
///
/// Gets a list of Request Lines
///
/// List of order lines
[WebMethod]
public static List GetOrdersForApproving()
{
try
{
List Lines = new List();
foreach (Objects.Database.OrderLine oOrderLine in Objects.Database.OrderLine.GetLinesWaitingFor(StaticStore.CurrentUser.UserID, int.MinValue))
{
Lines.Add(new iOrderLine(oOrderLine));
}
return Lines;
}
catch (Exception)
{
throw;
}
}
让我努力让它工作的代码是:
if (result.hasOwnProperty("d")) { result = result.d; }
关于c# - JQuery Ajax WebMethod 返回一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4690419/