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条)

报告相同问题?

悬赏问题

  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能