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

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

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

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

  • 写回答

4条回答 默认 最新

  • 斯洛文尼亚旅游 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 QT6颜色选择对话框显示不完整
  • ¥20 能提供一下思路或者代码吗
  • ¥15 用twincat控制!
  • ¥15 请问一下这个运行结果是怎么来的
  • ¥15 单通道放大电路的工作原理
  • ¥30 YOLO检测微调结果p为1
  • ¥15 DS18B20内部ADC模数转换器
  • ¥15 做个有关计算的小程序
  • ¥15 如何用MATLAB实现以下三个公式(有相互嵌套)
  • ¥30 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下