javascript前台调用webservice老提示未定义,网上帖子看了不少,实在不知道哪错了
首先定义ScriptManager
- C# code
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true"> <Services> <asp:ServiceReference Path="../../WebServ/ContentOperServ.asmx" /> </Services> </asp:ScriptManager>
然后是javascript方法
- JScript code
function DeleteInfo(infoID) { if(confirm('确定要删除吗?')) { ARSSPortalSite.WebServ.ContentOperServ.DeleteInfoByID(infoID, DeleteInfoSuc); } }
最后上webservice代码:
- C# code
using System;using System.Data;using System.Web;using System.Collections;using System.Web.Services;using System.Web.Services.Protocols;using System.ComponentModel;using System.Web.Script.Services;using ARSS.MOD.SUP;using ARSS.BLL.SUP;namespace ARSSPortalSite.WebServ{ /// <summary> /// ContentOperServ 的摘要说明 /// </summary> [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [ToolboxItem(false)] [ScriptService] public class ContentOperServ : System.Web.Services.WebService { [WebMethod] [ScriptMethod] public int DeleteInfoByID(int infoID) { ContentOperation contentOperManager = new ContentOperation(); return contentOperManager.DeleteInfoByID(infoID); }//删除新闻 }}
问题是老是提示ARSSPortalSite未定义,然后我把ARSSPortalSite.WebServ去掉,还是提示未定义,求高手解答
------解决方案--------------------------------------------------------
Services能直接浏览了吗?编译错误可不行哦
------解决方案--------------------------------------------------------
我也遇到这个问题 没找到答案
------解决方案--------------------------------------------------------
- C# code
后台Load注册btnDelete ScriptManager1.RegisterAsyncPostBackControl(btnDelete);
------解决方案--------------------------------------------------------
一个例子,自己参看的改吧。
http://www.cnblogs.com/webabcd/archive/2007/02/12/648087
------解决方案--------------------------------------------------------
我也遇到这个问题,Js中不能直接调用"命名空间.webservice.methodA",哪个高手站出来说说啊
------解决方案--------------------------------------------------------
自己写代码或者jquery调用webservice都很简单,ScriptManager 不是很好,有些客户端容易出问题。
http://dotnet.aspx.cc/file/jQuery-Ajax-Call-WebService-DataTable.aspx
http://dotnet.aspx.cc/file/call-aspnet-web-service-using-javascript.aspx
------解决方案--------------------------------------------------------
注意这行代码
//若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
[System.Web.Script.Services.ScriptService]