读书人

AJAX前台提交异常.求帮助

发布时间: 2012-07-30 16:19:05 作者: rapoo

AJAX前台提交错误.求大虾帮助

HTML code
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="JqueryAJAX.aspx.cs" Inherits="JqueryAJAX.JqueryAJAX" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head id="Head1" runat="server">    <title></title>    <script language="javascript" type="text/javascript" src="jquery-1.3.1.js"></script>    <script language="javascript" type="text/javascript">        $(function () {            $("#btnOK").click(function () {                Add();            });        })        function Add() {            var NO = $("#txtNO").val();            var name = $("#txtName").val();            var clas = $("#txtClass").val();            var sex2 = $("input[type=radio][checked]").val();            var sex = $('input:radio:checked').val();            var param = "{'NO':'" + NO + "','name':'" + name + "','clas':'" + clas + "','sex':" + sex + "}";            alert(param);                   $.ajax({                type: "POST",                url: "JqueryAJAX.aspx/AddInfo",                data: param,                contentType: "application/json; charset=utf-8",                dataType: "json",                timeout: 60000,                error: function (XMLHttpRequest, textStatus, errorThrown) {                    alert("error:" + errorThrown);                },                beforsend: function () {                    $("#btnOK").attr("value", "正在提交...");                },                success: function (msg) {                    if (msg.d == null) {                        return;                    }                    var result = msg.d;                    if (result > 0) {                        $("#btnOK").attr("value", "提交");                        alert("OK");                    }                    else {                        $("#btnOK").attr("value", "提交");                        alert("Error");                    }                },                complete: function (XMLHttpRequest, textStatus) {                    $("#btnOK").attr("value", "提交完成");                }            });        }    </script></head><body>    <form id="form1" runat="server">    <div>        学号:<input id="txtNO" type="text" /><br />        姓名:<input id="txtName" type="text" /><br />        班级:<input id="txtClass" type="text" /><br />        性别:<input id="Radio1" name="sex" type="radio" value="1" checked="checked" />男<input id="Radio2" type="radio" name="sex" value="0" />女        <input id="btnOK" type="button" value="提交" /></div>    </form></body></html>




后台代码:
C# code
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Data.SqlClient;using System.Text;using System.Web.Services;namespace JqueryAJAX{    public partial class JqueryAJAX : System.Web.UI.Page    {        protected void Page_Load(object sender, EventArgs e)        {        }        [WebMethod]        public static int AddInfo(string No, string name, string clas, int sex)        {            SqlConnection conn = new SqlConnection(@"server=YANQING\SQL2005;database=WikTest;uid=sa;pwd=sa");            StringBuilder str = new StringBuilder();            str.Append("insert into Student (StudentNO,StudentName,StudentSex,StudentClass) values(" + No + "," + name + "," + sex + "," + clas + ")");            SqlCommand comm = new SqlCommand(str.ToString(), conn);            conn.Open();            int i = comm.ExecuteNonQuery();            conn.Close();            return i;        }    }} 



[解决办法]
C# code
 str.Append("insert into Student (StudentNO,StudentName,StudentSex,StudentClass) values(" + No + "," + name + "," + sex + "," + clas + ")");//这个有明显的错误,字符型要加单引号,改为 str.Append("insert into Student (StudentNO,StudentName,StudentSex,StudentClass) values('" + No + "','" + name + "'," + sex + ",'" + clas + "')");
[解决办法]
var param = "{'NO':'" + NO + "','name':'" + name + "','clas':'" + clas + "','sex':" + sex + "}";
要改成

var param = "{'No':'" + NO + "','name':'" + name + "','clas':'" + clas + "','sex':" + sex + "}";

No的大小写要跟
AddInfo(string No, string name, string clas, int sex)
参数匹配

读书人网 >Ajax

热点推荐