zoukankan      html  css  js  c++  java
  • Jquery 动态生成表单 并将表单数据 批量通过Ajax插入到数据库

    利用Jquery 动态生成 Table 表单 之后利用each 方法来遍历所有文本框获取文本的value值  并通过Ajax 将数据 提交到Web服务里把数据插入数据库

    Html页面

    <!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title></title>
        <script src="js/Jquery1.7.js"></script>
        <script src="js/MyAdd.js"></script>
        <link href="css/MyPages.css" rel="stylesheet" />
    </head>
    <body>
        <div >
            <div id="divInsert">
                <div id="divBtn">
                    <input id="btnDelete" type="button" value="删除行" />
                    <input id="btnData" type="button" value="插入行" />
                    <input id="btnInsert" type="button" value="添加行" />
                </div>
            </div>
            <table id="tab" cellpadding="0" cellspacing="0">
                <tr>
                    <td rowspan="2">姓名</td>
                    <td rowspan="2">年龄</td>
                    <td colspan="2">血压</td>
                </tr>
                <tr>
                    <td>高压</td>
                    <td>低压</td>
                </tr>
            </table>
        </div>
        <div id="mydiv"></div>
    </body>
    </html>

    JS文档

    /// <reference path="../WebService1.asmx" />
    /// <reference path="../WebService1.asmx" />
    $(function () {
        //定义一个全局变量i,用来标识添加了几行
        var row = 0;
        var strValue = "";
        //将一行添加到table中去
        $('#btnInsert').click(function () {
            row++;
            //字符串拼接tr一行中的内容
            var tr = "<tr>";
            for (var i = 0; i < 3; i++) {
                tr += "<td><input id='" + row + "text'" + i + "+' type='text' value=" + row +""+ i + " /></td>";
            }
            tr += "<td><input class='txt' id='" + i + "text4'+ type='text' value=" + row + "" + 4 + " /><input id='Checkbox1' class='ck' name='ckb' type='checkbox' /> </td></tr>";
            $("#tab").append(tr);
        })
        //删除添加的行,先判断checkbox是否选中,然后删除
        $('#btnDelete').click(function () {
            $("input[name=ckb]:checked").each(function () { $(this).parent().parent().remove(); });
        })
        //将i遍历,判断是否存有值,如果有将数据插入数据库
        $('#btnData').click(function () {
            $('table input').each(function () {
                strValue += $(this).val() + ",";
            })
            $.ajax({
                type: 'post',
                contentType: 'application/json',
                url: "../WebService1.asmx/InsertInfo",
                data: "{valuesStr:'" + strValue + "'}",
                success: function (result) {
                    $('#mydiv').html(result.d);
                }
            })
        })
    })


    CSS文档
    table tr td{border:1px solid #eee;text-align:center;80px;}
    #divInsert{100%;height:25px;}
    #btnInsert{50px;height:25px;background-color:#eee;border-style:none;position:absolute;left:185px;}
    #btnData{50px;height:25px;background-color:#eee;border-style:none;position:absolute;left:235px;}
    #btnDelete{50px;height:25px;background-color:#eee;border-style:none;position:absolute;left:285px;}
    input{70px;}
    .txt{35px;float:left;position:relative;left:5px;}

    .ck{10px;float:right;}


    PersonInfo类文件

    namespace ASPOilfiled
    {
        public class PersonInfo
        {
            public string Name { get; set; }
            public int Age { get; set; }
            public int Hblood { get; set; }
            public int Lblood { get; set; }
        }
    }

    WebService1.asmx 文件

        [System.Web.Script.Services.ScriptService]
        public class WebService1 : System.Web.Services.WebService
        {
            public static string sqlstr = ConfigurationManager.ConnectionStrings["sqlstr"].ConnectionString;
            [WebMethod]
            public string InsertInfo(string valuesStr)
            {
                string result = "插入失败!";
                string asd = valuesStr.Replace("on,", "");
                string[] str2 = System.Text.RegularExpressions.Regex.Split(asd, ",");
                //for (int i = 0; i < str2.Length; i++)
                //{
                //    result += str2[i] + "<br/>";
                //}
                for (int i = 0; i < str2.Length; i++)
                {
                    PersonInfo info;
                    if (i % 4 == 0)
                    {
                        info = new PersonInfo();
                        info.Name = str2[i];
                        info.Age = Convert.ToInt32(str2[i + 1]);
                        info.Hblood = Convert.ToInt32(str2[i + 2]);
                        info.Lblood = Convert.ToInt32(str2[i + 3]);
                        result = InfoToSql(info).ToString();
                    }
                }
                return result;
            }
            public int InfoToSql(PersonInfo info)
            {
                string instSql = "insert into PersonInfo values(@name,@age,@Hblood,@Lblood)";
                SqlConnection con = new SqlConnection(sqlstr);
                con.Open();
                SqlCommand cmd = con.CreateCommand();
                cmd.CommandText = instSql;
                cmd.Parameters.Add("@name", SqlDbType.VarChar, 32).Value = info.Name;
                cmd.Parameters.Add("@age", SqlDbType.Int).Value = info.Age;
                cmd.Parameters.Add("@Hblood", SqlDbType.Int).Value = info.Hblood;
                cmd.Parameters.Add("@Lblood", SqlDbType.Int).Value = info.Lblood;
                int i = cmd.ExecuteNonQuery();
                cmd.Dispose();
                con.Dispose();
                return i;
            }
        }


  • 相关阅读:
    系统维护相关问题
    Python环境维护
    哈希表解决字符串问题
    论文笔记二:《A Tutoral on Spectral Clustering》
    论文笔记之哈希学习比较--《Supervised Hashing with Kernels》《Towards Optimal Binary Code Learning via Ordinal Embedding》《Top Rank Supervised Binary Coding for Visual Search》
    Java中String、StringBuffer、StringBuilder的比较与源 代码分析
    浙大pat1040 Longest Symmetric String(25 分)
    浙大pat1039 Course List for Student(25 分)
    浙大pat---1036 Boys vs Girls (25)
    百炼oj-4151:电影节
  • 原文地址:https://www.cnblogs.com/keanuyaoo/p/3315576.html
Copyright © 2011-2022 走看看