gpt4 book ai didi

c# - 从远程 HTML 页面调用 *.aspx 函数

转载 作者:行者123 更新时间:2023-11-27 22:28:41 25 4
gpt4 key购买 nike

您好,我是 Web 应用程序开发的新手。我创建了一个 *aspx 页面,该页面通过返回字符串的方法调用 Web 服务。现在我想使用任何脚本语言从远程 HTML 5 页面调用此 aspx 方法并在远程 HTML 页面上显示数据。谁能告诉我如何调用 aspx 方法并在 HTML 5 页面上显示内容。

以下是我正在使用的代码,

默认.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 但不会进入 success 函数。

请告诉我如何做到这一点。提前致谢。

最佳答案

在 aspx 源代码中,您必须有一个脚本管理器来启用 Web 方法,您必须将其放在表单中 <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true">我用下一个 jquery 函数测试它

 $(document).ready(function() {
$.ajax({
type: 'POST',
url: 'Default.aspx/getHotelMenuList',
data: '{ }',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (msg) {
alert(msg.d);
}
});
});

关于c# - 从远程 HTML 页面调用 *.aspx 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20519952/

25 4 0
文章推荐: jquery - 为什么要使用 JQuery 元素创建语法?
文章推荐: jquery - 如何禁用 JQuery 选项卡上的点击事件?
文章推荐: html - 强制
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com