如果我正确理解您的问题:
当您将文本框动态添加到页面时,添加一个 onclick 事件处理程序。
int id = 1; // You'd have access to this.
TextBox tb = new TextBox();
tb.Attributes.Add("onClick", string.Format("javascript:someFunction({0})", id));
// add other stuff.
form1.Controls.Add(tb);
然后有一个javascript函数来设置隐藏字段的值:
function someFunction(id) {
var hiddenField = document.getElementById("hdnField");
hiddenField.value = id;
}
请注意,我将隐藏字段的 clientIdMode 设置为 Static,并将 id 设置为“hdnField”。如果您没有设置 clientIdMode 的选项(.Net 4 之前),您将不得不 <%= hdnField.ClientID %> (在我的脑海中)。您可能还想检查您肯定传入数字的 javascript。