本文目录一览:
如何用JavaScript调用Web服务
通过JavaScript中的两个方法——useService
和callService
来调用一个已存在的Web服务。
callService
这个方法的语法:
iCallID = sElementID.sFriendlyName.callService([oCallHandler], funcOrObj, oParam);
iCallID
是调用服务后返回的ID。sElementID
是useService
方法的一个控件元素ID。稍后讲如何用useService
。sFriendlyName
是服务名,比如.NET中Default.asmx
,则这里是Default
。oCallHandler
是处理响应结果的回调函数,因为有些请求无需关注响应结果,在这里是可选参数。funcOrObj
是web服务中的方法,在.NET中便是标有[WebMethod]
的一些公用方法。oParam
是Web Method中的参数,可以是0,1,2,…个参数。useService
语法: 刚开始让我费解的是哪里来的这个方法,后来发现我们需要去微软官方上下载一个叫webservice.htc
的文件。 下载完这个文件,将其放到根目录下,在你的html里写上这样一段代码就轻松搞定:
<body style="behavior: url(webservice.htc)"/>
在onload
时初始化web服务,初始化代码如下:
var iCallID;
function init() {
serviceZivsoft.useService("Default.asmx?WSDL", "Default");
}
关于useService
更详细的解释,可以去MSDN上查阅,用法还是比较简单的。
js是web必须学习的么?
是的,必须要学,并且要学会!web前端需要学会HTML、js、CSS、HTML5、CSS3等基础,其次可以学点Vue等前端框架。js是做动态网页,和后台交互必须的语言,可以说一个好的网页肯定绕不开js,所以,加油学习吧!
js怎么调用webserver
步骤1. 在web.config
中的system.web
节点里加入:
<!--此节点可允许脚本跨域调用webservice-->
<webServices>
<protocols>
<add name="HttpPost"/>
<add name="HttpGet"/>
</protocols>
</webServices>
<!--此节点可允许脚本跨域调用webservice-->
步骤2. WebService代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Mvc;
namespace WebService
{
/// <summary>
/// WebService1 的摘要说明
/// </summary>
[WebService(Namespace = "")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
[System.Web.Script.Services.ScriptService]
public class WebService1 : System.Web.Services.WebService
{
[ValidateInput(false)]
[WebMethod(Description = "测试")]
public void getDBTableInfos(string EnterpriseCode)
{
HttpContext.Current.Response.ContentType = "application/json;charset=utf-8";
string jsonCallBackFunName = string.Empty;
jsonCallBackFunName = HttpContext.Current.Request.Params["jsoncallback"].ToString();
HttpContext.Current.Response.Write(jsonCallBackFunName + "({ \"Result\": \"" + EnterpriseCode + "\" })");
}
}
}
步骤3. HTML页面部分:
<!DOCTYPE html>
<html>
<head>
<title>Index</title>
<script src=""></script>
<script type="text/javascript">
$(function () {
$("#btnSubmit").click(function () {
var EnterpriseCode = "39";
var dataStr = "EnterpriseCode=" + EnterpriseCode;
$.ajax({
type: "get",
url: "?",
dataType: "jsonp",
jsonp: 'jsoncallback',
data: dataStr,
success: function (result) {
//返回结果
alert(result.Result);
}
});
});
});
</script>
</head>
<body>
<div>
<input id="btnSubmit" type="button" value="查询" />
</div>
</body>
</html>