将动态生成的输入提交给SQL

时间:2013-07-22 23:20:43

标签: c# javascript sql dynamic for-loop

添加联系人时,我有一个Java脚本动态创建表中的行。添加的每个联系人我想将它们提交到sql数据库中的单元格。我提交第一个联系人没有问题,但我需要使用一个循环(可能是for循环?)来提交添加到表中动态创建的行的所有联系人。我是C#社区的新手,正在寻找一些如何做到这一点的帮助。

当通过Java Script创建行时,我还创建了一个带有“name”值的输入,该名称值用于提交给数据库中的单元格。

提前致谢

代码如下:

的JavaScript

function flNames() {

var rowID = parseInt(document.getElementById("ContactsRowCount").value, 10);
rowID++;

if (currentRow > 0) {
    saveEdits();
} else {
    var firstName = $("#firstName").val();
    var lastName = $("#lastName").val();
    var sHtml = "<tr id='row" + rowID + "'>" +
        "<td class='tblStyle68wlb' id=\"FirstN" + rowID + "\">" + firstName + "</td><input type=\"hidden\" value=\"" + firstName + "\" name=\"cFirst\" />" +
    "<td class='tblStyle68wl' id=\"LastN" + rowID + "\">" + lastName + "</td><input type=\"hidden\" value=\"" + lastName + "\" name=\"cLast\" />" +
        "<td class='tblStyle68wl' ><button type='button' class='XsmallButtons' onclick='editRow(" + rowID + ")'>Edit</button></td>" +
        "<td class='tblStyle68wlb' ><button type='button' class='XsmallButtons' onclick='deleteRow(" + rowID + ")'>Delete</button></td>" +
        "</tr>";

    $("#dynamicTableTesting").append(sHtml);
    newRow++;

    document.getElementById("ContactsRowCount").value = rowID;

    $("#firstName, #lastName").val("");
}
}  

C#

protected void Page_Load(object sender, EventArgs e)
    {
        GetFormData();
    }
    private void GetFormData()
    {
        string dynamicFirstName = Request.Form["cFirst"];
        string dynamicLastName = Request.Form["cLast"];
        string tableContactID = Request.Form[""];
        string sql = @"
            INSERT INTO
                tableContactData
                    (
                         fName
                        ,lName
                    )
            VALUES
                (
                     @cFirst
                    ,@cLast
                );
            SELECT SCOPE_IDENTITY();
        ";

        SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["conn"].ConnectionString);
        SqlCommand cmd = new SqlCommand(sql, conn);

        cmd.Parameters.AddWithValue("cFirst", dynamicFirstName);
        cmd.Parameters.AddWithValue("cLast", dynamicLastName);

            conn.Open();
            tableContactID = cmd.ExecuteScalar().ToString();
            conn.Close();

    }

0 个答案:

没有答案