+ -
当前位置:首页 → 问答吧 → 用Ajax提交数据给一般处理程序

用Ajax提交数据给一般处理程序

时间:2011-12-07

来源:互联网

页面没有反应。一般处理程序断点进不去,这个应该怎样调试

作者: ForEvErNoME   发布时间: 2011-12-07

HTML code

$(function () {
            $("#btnInsert").click(function () {
                var username = $("#txtName").val(); //用户名
                var usermessage = $("#txtMessage").val(); //留言内容
                var userimage = 0; //用户头像
                var Time = new Date();
                var usertime = Time.getFullYear() + "-" + (Time.getMonth() + 1) + "-" + Time.getDate() + " " + Time.getHours() + ":" + Time.getMinutes() + ":" + Time.getSeconds(); //获取留言的时间
                $.ajax({
                    type: "POST",
                    url: "Hander/Message.ashx?method=add",
                    data: "username=" + username + "&usermessage=" + usermessage + "&userimage=" + userimage + "&usertime=" + usertime + "",
                    success: function (data) {
                        if (data == "success") {
                            alert("success");
                        }
                    },
                    error: function (data) {
                        if (data == "error") {
                            alert("error");
                        }
                    }
                });
            });
        });



C# code

public void ProcessRequest (HttpContext context) {
        context.Response.ContentType = "text/plain";
       // string str = context.Request.Url.ToString();
        string method = context.Request.Form["method"].ToString();//获取想要做的操作
        MessageClass message = new MessageClass();//创建新的留言对象      
        switch (method)
        {
            case "add":           
                message.UserName = context.Request.Params["username"].ToString();
                message.UserMessage = context.Request.Params["usermessage"].ToString();
                message.UserImage = context.Request.Params["userimage"].ToString();
                message.UserTime=Convert.ToDateTime(context.Request.Params["usertime"].ToString());
                InsertMessage(message,context);
            break;
            case "delete": break; 
        }
    }
    /// <summary>
    /// 添加留言
    /// </summary>
    /// <param name="message">传递的对象</param>
    /// <param name="context">特定的context</param>
    public void InsertMessage(MessageClass message, HttpContext context)
    {
        string sql = "Insert into T_BBS ('username','usermessage','userimage','usertime') values ('" + message.UserName + "','" + message.UserMessage + "','" + message.UserImage + "','" + message.UserTime + "')";
        bool flag= SqlHelper.ExecuteNoReturn(sql);
        if (flag)
        {
            context.Response.Write("success");
        }
        else
        {
            context.Response.Write("error");
        }
    }

作者: ForEvErNoME   发布时间: 2011-12-07

$("#btnInsert")

btnInsert 是服务器端控件么

是的话,改成

$("#<%=btnInsert.ClientID%>")

作者: Sandy945   发布时间: 2011-12-07

引用 2 楼 sandy945 的回复:

$("#btnInsert")

btnInsert 是服务器端控件么

是的话,改成

$("#<%=btnInsert.ClientID%>")

不是~一般处理程序不知道怎么调试好!!
HTML code

<form id="form1" runat="server">
<div id="msginfo">
          <table>
            <tr>
                <td>用户名:</td>
                <td><input id="txtName" type="text" /></td>
                <td><span id="checkname">(*英文字母开头,4-10个字符)</span></td>
            </tr>
            <tr>
                <td>用户头像:</td>
                <td><input type="file" value="选择头像" /></td>
            </tr>
            <tr>
                <td>留言内容:</td>
                <td><textarea id="txtMessage" rows="5" cols="40"></textarea></td>
                <td><span>您还可以输入<strong id="msgcount">100 </strong>个字符</span></td>
            </tr>
            <tr>
                <td><input id="btnInsert" type="button" value="发表" /></td>
            </tr>
            </table>
        </div>
</form>



JScript code

 $(function () {
            $("#btnInsert").click(function () {
                var username = $("#txtName").val(); //用户名
                var usermessage = $("#txtMessage").val(); //留言内容
                var userimage = 0; //用户头像
                var Time = new Date();
                var usertime = Time.getFullYear() + "-" + (Time.getMonth() + 1) + "-" + Time.getDate() + " " + Time.getHours() + ":" + Time.getMinutes() + ":" + Time.getSeconds(); //获取留言的时间
                $.ajax({
                    type: "POST",
                    url: "Hander/Message.ashx?method=add",
                    data: "username=" + username + "&usermessage=" + usermessage + "&userimage=" + userimage + "&usertime=" + usertime + "",
                    success: function (data) {
                        if (data == "success") {
                            alert("success");
                        }
                    },
                    error: function (data) {
                        if (data == "error") {
                            alert("error");
                        }
                    }
                });
            });
        });

作者: ForEvErNoME   发布时间: 2011-12-07

指定 datatype

作者: Sandy945   发布时间: 2011-12-07

用 “GET" 直接打开URL地址 看有没有错

作者: hewansongjuan   发布时间: 2011-12-07

用get 方法 .

作者: jayrao5566   发布时间: 2011-12-07

引用 5 楼 hewansongjuan 的回复:

用 “GET" 直接打开URL地址 看有没有错

没问题呢~

作者: ForEvErNoME   发布时间: 2011-12-07

引用 6 楼 jayrao5566 的回复:

用get 方法 .


用GET方法浏览器地址没变化~

作者: ForEvErNoME   发布时间: 2011-12-07

你先确保 url正确

可以写 相对路径

要相对根目录

作者: Sandy945   发布时间: 2011-12-07

$.post,用这方法

作者: ggglllzzz   发布时间: 2011-12-07