实习期间初次使用javascript调用webserver,将html页面提交

来源:互联网 发布:淘宝寄快递在哪里 编辑:程序博客网 时间:2024/06/07 05:16
    所用到的js文件来源于网络:http://pan.baidu.com/s/1qW5SrSw
    新建web服务
 

新建web服务后出现两种文件:.cs和.asmx
.asmx的内容只有下面一行WebService 定义是web服务,CodeBehind定义后台代码
<%@ WebService Language="C#" CodeBehind="~/App_Code/NewsAgent.cs" Class="NewsAgent" %>

.cs文件如下(Push(自己添加的)和HelloWorld是该服务提供的方法)
/*****************************************************************/
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.Services;

/// <summary>
/// NewsAgent 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class NewAgent : System.Web.Services.WebService {
    /// <summary>
    /// 调用http://192.168.1.233/WebService/WebService.asmx新闻发布的代理
    /// </summary>
    public NewsAgent () {

        //如果使用设计的组件,请取消注释以下行
        //InitializeComponent();
    }
    /// <summary>
    /// 发布新闻信息的代理,
    /// </summary>
    /// <param name="title">标题</param>
    /// <param name="docmentType">类型</param>
    /// <param name="Theme">主题</param>
    /// <param name="author">发布者</param>
    /// <param name="detail">具体内容</param>
    /// <returns></returns>
    [WebMethod(Description = "发布信息,返回成功与否")]
    public string PushNews(string title, int  docmentType, string Theme, string author, string detail)
    {
        WebReference.WebService webService = new WebReference.WebService();
        try
        {
            webService.Push(title,
             docmentType,
             Theme,
             author,
             detail);

            return "发布成功";
        }
        catch
        {
            return "已发布";
        }
    }

    [WebMethod]
    public string HelloWorld() {
        return "Hello World";
    } 
}
/*****************************************************************/
以下是具体实现的javascript代码
/*****************************************************************/
/*****************************************************************/
 <script src="../../../../JavaScripts/soapclient.js"></script>         //引用js文件
    <script type="text/javascript">
        var url = "../../../../NewAgent.asmx";                //webserver文件的位置
        // DEMO 2
        function HelloTo() {                                                   //按钮点击触发事件
            bdhtml = window.document.body.innerHTML;
            sprnstr = "<!--startprint-->";
            eprnstr = "<!--endprint-->";
         prnhtml = bdhtml.substr(bdhtml.indexOf(sprnstr) + 17);
          prnhtml = prnhtml.substring(0, prnhtml.indexOf(eprnstr));
            var pl = new SOAPClientParameters();                //参数
            pl.add("title", document.form1.title.value);
            pl.add("docmentType", "2");
            pl.add("Theme", document.form1.Theme.value);
            pl.add("author", document.form1.author.value);
            pl.add("detail", prnhtml);
           
            SOAPClient.invoke(url, "Push", pl, false, HelloTo_callBack);    //"Push":webserver的调用方法
        }
        function HelloTo_callBack(r) { //回调函数     //pl:"Push"方法的参数
            alert(r);
        }
    </script>
</head>
<body>
    <form id="form1" runat="server" enableviewstate="false">
            <input id="btn_back" type="button" value="打印" enableviewstate="false" onclick="preview(); window.close()" />
        <input id="btn_publish" type="button" value="发布"  enableviewstate="false" onclick="HelloTo()" />
        <input type="text" name="txtName" hidden="hidden" id="title" value="<%=findHellokitty(null)+DateTime.Now.Year.ToString() + "妈妈" %>" />
        <input type="text" name="txtName" hidden="hidden" id="Theme" value="妈妈" />
        <input type="text" name="txtName" hidden="hidden" id="author" value="<%= WebSiteBLL.instance.GetUseSessionInfo(null).UserName %>" />
。。。。
。。。。

/*****************************************************************/


0 0
原创粉丝点击