c# - 我无法在 ASP.NET 后面的代码中读取按下按钮的 css ID
问题描述
我无法在后面的代码中读取按下按钮的 css ID。
这是我为字符串 btnCliked = ((Button)sender).ID 创建的方法;ID 为空,我不知道为什么。
protected void open_contract_click(object sender, EventArgs e)
{
string btnCliked = ((Button)sender).ID;
foreach (contractStepColumn i_contractColumn in kanban.kanbanBoard)
{
foreach (contractTask contract_task in i_contractColumn.contractTasks)
{
if (btnCliked == "btnContractPopup" + i_contractColumn.stepColumnName + i_contractColumn.contractTasks.IndexOf(contract_task))
{
KanbanUI.selectedContractID = contract_task.contract_id;
Redirect();
}
}
}
}
}
这是我的按钮是如何在后面的代码中创建的。
Button btnMoreDetails = new Button();
btnMoreDetails.Attributes.Add("class", "btnPopup");
btnMoreDetails.Attributes.Add("ID", "btnContractPopup" + i_contractColumn.stepColumnName + i_contractColumn.contractTasks.IndexOf(contract_task));
btnMoreDetails.Text = "Más Detalles";
btnMoreDetails.Attributes.Add("runat", "server");
btnMoreDetails.Click += new EventHandler(this.open_contract_click);
expandPopup.Controls.Add(btnMoreDetails);
任何帮助都会非常受欢迎。
解决方案
它不起作用的原因是因为这条线
btnMoreDetails.Attributes.Add("ID", "btnContractPopup" + i_contractColumn.stepColumnName + i_contractColumn.contractTasks.IndexOf(contract_task));
由于某种原因,asp.net 无法读取 id,所以我将其更改为
btnMoreDetails.ID ="btnContractPopup" + i_contractColumn.stepColumnName + i_contractColumn.contractTasks.IndexOf(contract_task);
尽管在这两种情况下,css 对我来说似乎完全一样。
推荐阅读
- r - 使用 plot_grid (cowplot) 将 ggplot 和 base r 图与相同的 x 限制对齐
- php - getimagesize() 方法下的类型(索引 2)与图像类型有何不同?
- c# - 为什么 double x * double x 不等于 int y
- java - Spring in Action 第 4 章 testTrackCounter 未通过测试
- php - 类成员在另一个方法中为空,从第一个返回值
- sql-server - sqlcmd 错误,消息 102,级别 15,状态 1,第 1 行 'd' 附近的语法不正确
- python - 在将 DataFrame 保存为 parquet 格式之前需要重新分区吗?
- jquery - 使用智能向导进行表单验证
- python - Python - 通过 CSV 中的数据删除 SQLITE3 行
- scala - 覆盖对象中的多个属性的意外行为