现要从某webservice得到一些返回值,要求用Jquery实现。= =+--------------------------------------------------------------------------------------------
下面这个是我测试的Jquery代码:
$(document).ready(function() { $('#btn1').click(function() { $.ajax({ type: "POST", contentType: "application/json", url: "http://xxxxxx/WebService.asmx/HelloWorld", //WebService的真实地址和方法名(不过其实这个页面是我为了测试临时做的,放在服务器上...),如果url用这个的话,测试点击按钮就完全没反应,貌似没取出值... //url: "WebService.asmx/HelloWorld", //如果把这个 WebService页面跟Jquery放在一起本地调用的话倒是能弹出alert,弹出值见下面说明 data: "{ }", //做最简单的测试这里就没用参数 dataType: 'json', success: function(result) { $('#dictionary').append(result);//成功的话显示返回值 }, error: function(x, e) { alert(x.responseText); } }); }); });
页面html:
<div id="btn1" class="button"> HelloWorld</div>
<div id="dictionary"> </div>
webservice:
[WebService(Namespace = "http://tempuri.org/")][WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)][System.ComponentModel.ToolboxItem(false)][System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService { [WebMethod] public string HelloWorld() { return "Hello World "; }
}
=======================================================
说明:
如果用webservice网测试址的话,点了按钮后完全没反应(网页左下角有黄色感叹号,说access is denied. 报错代码行数5千多行——话说我一共加起来也没几行代码 - =)
如果用第二个url,也就是本地的那个的话,也不能在dictionary中显示,而是弹出alert,alert 出来的内容就是正常访问该webservice显示出的xml <?xml version="1.0" encoding="utf-8" ?> <string xmlns="http://tempuri.org/">Hello World</string>
另外,我这些是在VS2005下操作的............. = =||||
请问:
1. 怎么才能通过网址从webservice那里得到正确值啊?难道不能直接用url也要添加web引用啥的?
2. 难道Jquery真的不能用VS2005只能用2008么?为啥米?如果可能的话,还是想尽可能用2005,因为大部分都是用2005开发的,想统一一些。当然了,如果2005真的就是不行只能用2008的话,那也只能用2008了,倒也不是死活非用2005不可~ 只是稍微告诉我一下原因,然后我好回复经理.... orz
请各位高手不吝赐教,之前完全没接触过 ajax/Jquery的小白,经理又死活让我用这个... 囧rz
深鞠躬!~ 先谢了! 如果回答的很详细我一定加分... 虽然我穷的叮当响..... (┬_┬)
- 5 回答
- 0 关注
- 515 浏览
添加回答
举报
0/150
提交
取消