【发布时间】:2013-12-11 13:06:50
【问题描述】:
您好,我是 Web 应用程序开发的新手。我创建了一个 *aspx 页面,该页面通过返回字符串的方法调用 web 服务。现在我想使用任何脚本语言从远程 HTML 5 页面调用这个 aspx 方法,并在远程 HTML 页面上显示数据。 谁能告诉我如何调用 aspx 方法并在 HTML 5 页面上显示内容。
以下是我正在使用的代码,
Default.aspx.cs 文件
using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using HotelTabWebServiceWebReference;
using System.Web.Services;
public partial class _Default : System.Web.UI.Page
{
[System.Web.Services.WebMethod(true)]
protected static string getHotelMenuList()
{
HotelTabWebServiceWebReference.HotelAppForTabWebService proxy = new HotelTabWebServiceWebReference.HotelAppForTabWebService();
string menuList = null;
try
{
menuList = proxy.getMenuType();
}
catch (FormatException)
{
Console.Write("error");
}
return menuList;
}
}
当我使用 default.aspx 运行这个 default.aspx.cs 页面时,它显示工作正常
但是当我从外部 HTML 5 调用它时,它什么也没做
HTML 5 代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Untitled Page</title>
<script type="text/javascript" src="jquery-1.10.2.js"></script>
<script type="text/javascript" src="newJS.js"></script>
</head>
<body onload="sendSOAPRequest()">
<div id="myDiv">data returned by aspx function should appear here</div>
</body>
</html>
JQuery代码如下,
// JavaScript Document
function sendSOAPRequest()
{
$.ajax({
url: "http://localhost:50664/ASPX/Default.aspx/getHotelMenuList",
type: "POST",
dataType: "xml",
data: "{}",
complete: endFunction,
async: true,
contentType: "text/xml; charset=\"utf-8\"",
success: function (msg) {
$('#myDiv').text(msg.d);
}
});
}
function endFunction(xmlHttpRequest, status)
{
alert("complete"+xmlHttpRequest.re);
}
执行 HLML 5 文件时执行 endFunction 但不进入成功函数。
请告诉我该怎么做。 提前致谢。
【问题讨论】:
-
您可以先在您的 ajax 调用中添加一个
error事件并在那里查看错误详细信息 -
@RonnoDex:当我显示任何东西时,页面上会出现 default.aspx 页面内容,但我需要根据客户要求在 HTML 5 页面上显示内容
-
是的,正如我所说,将
error: function(jqXHR, textStatus, errorThrown) { alert(errorThrown); }添加到您的 ajax 调用中
标签: c# javascript jquery asp.net html