在asp.net中使用ajax jquery插入数据

时间:2014-01-06 01:15:48

标签: jquery asp.net ajax

我不知道是什么问题..

        <script type="text/javascript">
        $(document).ready(function () {
            $("#SendCommentBtn").click(function () {
                $.ajax({

                    type: "POST",
                    contentType: "application/json; charset=utf-8",
                    url: "Pages/PageOne.aspx/SendComment",
                    data: "{'name':'" + $('#nameTxt').val() + "','comment':'" + $('#commentTxt').val() + "'}",
                    async: false,
                    success: function (response) {
                        $("#nameTxt").val("");
                        $("#commentTxt").val("");
                        alert("OK");
                    },
                    error: function () {
                        alert("ERROR");
                    }
                });
            });
        });
</script>

在我的代码背后

    [WebMethod]
    public static void SendComment(string name, string comment)
    {
        using (SqlConnection cnn = new SqlConnection("CONNECTIONSTRING"))
        {
            cnn.Open();

            int CodArt = Convert.ToInt32(HttpContext.Current.Request.QueryString["CodArt"].ToString());

            string query = @"INSERT INTO Comment VALUES(@Param1,@Param2,@Param3)";
            SqlCommand cmd = new SqlCommand(query, cnn);

            cmd.Parameters.AddWithValue("@Param1", CodArt);
            cmd.Parameters.AddWithValue("@Param2", comment);
            cmd.Parameters.AddWithValue("@Param3", name);

            cmd.ExecuteNonQuery();

        }
    }

我的问题在哪里?我找不到它。我正在使用母版页...是否与网页表单相同?这段代码在主页面中..如果在我的代码后面放一个断点(SendComment方法),网络就不会停止。它就像永远不会到达它。

2 个答案:

答案 0 :(得分:0)

试试这可能有助于您解决问题

var name = $.trim($('#<%=nameTxt.ClientID %>').val());
var comment= $.trim($('#<%=nameTxt.ClientID %>').val());
$.ajax({

                type: "POST",
                contentType: "application/json; charset=utf-8",
                url: "Pages/PageOne.aspx/SendComment",
                data: "{'name':'" + name + "','comment':'" + comment + "'}",
                async: false,
                success: function (response) {
                    $("#nameTxt").val("");
                    $("#commentTxt").val("");
                    alert("OK");
                },
                error: function () {
                    alert("ERROR");
                }
            });

答案 1 :(得分:0)

我附上了示例代码供您参考..

  <script type="text/javascript">
    $(document).ready(function () {
        $("#SendCommentBtn").click(function (e) {
            $.ajax({
                type: "POST",
                contentType: "application/json; charset=utf-8",
                url: "/Pages/PageOne.aspx/SendComment",
                data: "{'name':'" + $('#<%= nameTxt.ClientID %>').val() + "','comment':'" + $('#<%= commentTxt.ClientID %>').val() + "'}",
                //async: false,
                success: function (response) {
                    $('#<%= nameTxt.ClientID %>').val("");
                    $('#<%= commentTxt.ClientID %>').val("");
                    alert("OK");
                },
                error: function () {
                    alert("ERROR");
                }
            });
            e.preventDefault();
        });
    });
</script>

检查一下,让我知道反馈Example Source code