我在隐藏字段中设置值,如下所示:
((TextBox)ctrl).Attributes.Add("onchange", "document.getElementById('" +
((BasePage)Page).GetControl(Page, "ChangedRowsIndicesHiddenField").ClientID +
"').value.concat('" + row.RowIndex + ",');");
在页面源代码中,它看起来像这样:
onchange="document.getElementById('ctl00_CPHDefault_tcTPS_TPProd_ctl01_tcProduction_TPNewTitlesStatus_ChangedRowsIndicesHiddenField').value.concat('0,');"
我希望能够在回发(按钮点击)中从代码隐藏中检索并使用此值:
string ChangedRowsIndices = ChangedRowsIndicesHiddenField.Value.TrimEnd(',');
但由于某种原因,ChangedRowsIndices总是空的。你能帮帮我吗?我究竟做错了什么? 这是隐藏的字段:
<input id="ChangedRowsIndicesHiddenField" type="hidden" runat="server" />
感谢。
答案 0 :(得分:2)
如果不使用runat = server,请在此处添加名称
<input id="ChangedRowsIndicesHiddenField" type="hidden"
name="ChangedRowsIndicesHiddenField_ID" />
并在帖子中读取数据,如
HttpContext.Current.Request.Form["ChangedRowsIndicesHiddenField_ID"]
如果您使用runat =“server”离开它,请使用UniqueID
获取它HttpContext.Current.Request.Form[ChangedRowsIndicesHiddenField.UniqueID]
您有值的错误,设置值使用document.getElementById('theid').value = 'new value';
得到像
document.getElementById('ctl00_CPHDefault_tcTPS_TPProd_ctl01_tcProduction_TPNewTitlesStatus_ChangedRowsIndicesHiddenField').value = 'new value'
现在你以jQuery的方式输入它。