sinat_34861539 2018-05-10 07:27 采纳率: 100%
浏览 1943
已采纳

asp.net 如何把Table里的数据一次性插入数据库中

table有两列 数据是在前端添加的所以行数不确定

希望的效果是:
按保存按钮 将textbox1和table里两列x行的数据分别插入表1和表2中
前台已经做好了 求后台button-Click ()的具体代码 能用立马采纳 谢谢

  • 写回答

4条回答 默认 最新

  • Go 旅城通票 2018-05-10 07:38
    关注

    https://ask.csdn.net/questions/688319
    下面内容直接保存为x.aspx进行测试,x.aspx,不要改动,如果改了文件名注意修改ajax请求的页面名称

    
    <%@ Page Language="C#" AutoEventWireup="true" %>
    <script runat="server">
        protected void Page_Load(object sender, EventArgs args)
        {
            if (Request.Form["op"] == "save")
            {
                string data = Request.Form["data"], sql = "";
                if (!string.IsNullOrEmpty(data))
                {
                    string[] arr = data.Split('\n'), item;
                    foreach (string s in arr)
                    {
                        item = s.Split('|');
                        if (item.Length < 2) continue;
                        sql += "insert into xxxtable(name,num)values('" + item[0] + "'," + item[1] + ")";
                    }
                    if (sql != "")
                    { //执行sql语句,不用我多少了吧。。。
    
    
                        Response.Write("1");//成功输出1
                    }
                    else Response.Write("数据错误...");
                }
    
                Response.End();
            }
        }
    </script>
    
    <script src="https://cdn.bootcss.com/jquery/1.7.1/jquery.min.js"></script>
    货品名:<input type="text" id="text1" /> 数量:<input type="text" id="text2" /><input type="button" value="添加" /><br />
    <table id="table" border="1"><tr><td>货品名</td><td>数量</td></tr></table>
    <br /><a onclick="save()">保存</a>
    <script>
        $(function () {
            $(':button').click(function (e) {
                var text1 = $('#text1').val();
                var text2 = $('#text2').val();
                $('#table').append('<tr><td>' + text1 + '</td>><td>' + text2 + '</td></tr>')
            })
        });
        function save() {
            var data = $('#table tr:gt(0)').map(function () {
                //如果输入内容存在英文状态下|则替换为全角状态下的|
                return $('td', this).map(function () { return this.innerHTML.replace(/\|/g, '|') }).get().join('|');//每组用英文状态下|分隔
            }).get().join('\n');//每行数据用换行符隔开
    
            if (!data) { alert('先添加数据!'); return }
    
            $.ajax({
                type: 'POST', url: 'x.aspx', data: { data: data, op: 'save' }, complete: function (xhr) {
                    var s = xhr.responseText;
                    if (s == '1') alert('保存成功')
                    else alert(s)
                }
            })
        }
    </script>
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 python天天向上类似问题,但没有清零
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 C#调用python代码(python带有库)
  • ¥15 矩阵加法的规则是两个矩阵中对应位置的数的绝对值进行加和
  • ¥15 活动选择题。最多可以参加几个项目?
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)