asp.net ajax 如何应用到 webform 中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了asp.net ajax 如何应用到 webform 中相关的知识,希望对你有一定的参考价值。
参考技术A 必须先把ScriptManager或者ToolkitScriptManager放到页面上。然后再用鼠标把别的控件拖到页面上然后运行就可以了。有些功能你也可以用asp.net ajax 的javascript类库可以自己编辑。脚本后面只需写个if(sys="undefind") ....后面不记得了。就可以运用它。 参考技术B 页面的最上面需要放一个ScriptManager这个控件里面会有
所有需要异步传输的放到
UpdatePanle这个空间里面
就是这么简单
Timer是时间控件
另外2个我记得好像是效果追问
在webform里面也是一样吗?
追答俺说的就是 WebForm~我是网站开发di~
本回答被提问者和网友采纳如何使用 ajax 从跨域调用 asp.net Web 服务
【中文标题】如何使用 ajax 从跨域调用 asp.net Web 服务【英文标题】:How to call asp.net web services using ajax from cross domain 【发布时间】:2013-06-23 10:23:35 【问题描述】:我正在使用 javascript、html、css(跨平台技术)开发移动应用程序,我已经使用 asp .net 编写了一个 web 服务,我想从 web 服务中获取数据并使用 javascript/jquery 显示到客户端。我们指向网络服务并显示结果,但这仅在 IE(Internet Explorer)中有效,我们从服务器获得结果为“真实”响应,但在其他浏览器(Mozilla,chrome)中它不起作用,我们得到结果“ false”作为来自服务器的响应。正如我所期望的那样,结果在所有浏览器中都为“true”,但它没有发生。下面我给出了我使用的所有代码。
WebService.asmx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
/// <summary>
/// Summary description for WebService
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
[System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService
[WebMethod]
public bool GetValue(string id,string pwd)
string userid = "abc";
string password = "xyz";
if (userid==id && password==pwd)
return true;
else
return false;
网页配置
<?xml version="1.0"?>
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0"/>
</system.web>
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*"/>
<add name="Access-Control-Allow-Headers" value="Content-Type"/>
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
HTML页面代码
<!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>
</title>
<script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
<script>
function JsonTest2()
jQuery.support.cors = true;
$.ajax(
type: 'POST',
url: "http://10.16.10.35/webservice_test/WebService.asmx/GetValue",
data: '"id":"vipul","pwd":"borole"',
contentType: 'application/json; charset=UTF-8',
dataType: 'json',
async: false,
success: function (msg)
alert(msg.d);
,
error: function (msg)
alert('failure');
alert(msg);
);
</script>
</head>
<body>
<input id="Button1" type="button" value="button" onclick="javascript:JsonTest2();" />
</body>
</html>
请帮助我从所有浏览器调用此 Web 服务,我无法理解为什么它返回 false
【问题讨论】:
【参考方案1】:您还需要为 POST 设置 Access-Control-Allow-Methods。
另外,您是否意识到使用 * 表示 Origin 允许任何人访问该服务?您可能想要使用适合实现 CORS 的库,例如 Thinktecture IdentityModel 库:
http://brockallen.com/2012/06/28/cors-support-in-webapi-mvc-and-iis-with-thinktecture-identitymodel/
查看 IIS/Url 选项(因为您似乎是在 IIS 之外托管)。
【讨论】:
请根据问题帮忙以上是关于asp.net ajax 如何应用到 webform 中的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 ajax 从跨域调用 asp.net Web 服务
如何在 Asp.Net MVC5 中使用 Ajax 将数据库更改保存到拖放列表
如何在我的 .NET 3.5 Web 应用程序中安装和使用 ASP.NET AJAX 控件工具包?