为什么我调用ajax传到webservice没什么反应啊?是不是要设置什么?
<script type="text/javascript">
$(function () {
$("#ajaxd").click(function () {
$.ajax({
type: "POST",
url: "WebService.asmx/HelloWorld",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (json) { alert(json.d) }
})
});
});
</script>
[WebMethod]
public string HelloWorld() {
return "Hello World";
}
http://www.cnblogs.com/chenxizhang/archive/2009/05/28/1491231.html
这篇文章应该会帮到你吧
WebService.asmx.cs文件里面
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。 // [System.Web.Script.Services.ScriptService]
取消这个注释了吗?
我刚试过了,取消了,也还是不行
@gja: 你看执行的时候js报错了没?确认下jquery.js是否引用了。
最好$.ajax方法里面加上 error: function (result, textStatus) { alert(textStatus);},就能看到如果是调用出错了能提示下。
@webaspx: alert出来的是error
@gja: alert(result.responseText); 试试,看看是啥错误。
@webaspx: 弹出一对话框, 在/web/webService.asmx处找不到web服务
@gja: 路径不对?VS的站点没启动?
@webaspx: 该怎么解决问题?
@gja:
1.启动你的站点调试
2.确认你的WebService.asmx和你当前页面是在同一文件夹里面么?是就没问题,否则修改路径。
@webaspx: 该怎么启动啊,具体点??
websevice不是这样玩的呀亲.. 你直接 引用 服务器 直接操作的是这个服务的对象
那为什么我webservice调用ajax不行啊...赐教
@gja: webservice调用ajax? webservice相当于是服务器端. 你在服务器端还调ajax做什么?
@望着天的蜗牛: 页面调用webservice服务器啊,老兄
@gja: ...哎.. 你在你需要调用webservice服务器的项目 的引用上右键添加服务器引用 然后再健代理在对象 直接调代理类对象的方法 就可以了
首先 你要确定这个异步调用到了 webservice 并返回了结果,
然后 webservice默认是返回xml格式的数据,若需要返回json格式 需要在方法上加个关于josn的特性 这个百度有
最后 确定是json格式后按你的方法解析自然就不是问题了