連絡先が追加されると、Java Script が動的にテーブルに行を作成します。追加された各連絡先を、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();
}