当前位置:编程学习 > 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;width:80px;}
#divInsert{width:100%;height:25px;}
#btnInsert{width:50px;height:25px;background-color:#eee;border-style:none;position:absolute;left:185px;}
#btnData{width:50px;height:25px;background-color:#eee;border-style:none;position:absolute;left:235px;}
#btnDelete{width:50px;height:25px;background-color:#eee;border-style:none;position:absolute;left:285px;}
input{width:70px;}
.txt{width:35px;float:left;position:relative;left:5px;}
.ck{width: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++)
  &nbs
补充:web前端 , JavaScript ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,