gpt4 book ai didi

c# - 即使在 javascript 中设置了值之后, 值在代码隐藏中仍为空

转载 作者:行者123 更新时间:2023-11-28 01:43:21 25 4
gpt4 key购买 nike

这是我的问题。我有一个隐藏字段,我通过 JavaScript 方法更改其值。当按下 ctrl 键在 gridview 中选择一行时,hiddenfield 的值就会被设置。

这是隐藏字段值的分配方式(Javascript 代码):

var curKey;
function checkKey()
{
//Check if contrl key is pressed or not.
if (curKey == 17)
{
document.getElementById('<%= CtrlKeyPressed.ClientID %>').value = 'Y';
}
}

在代码中,我在 gridview_rowdatabound 函数中调用了这个 javasxcript ,如下所示:

 gridview.Rows[i].Attributes.Add("onclick",ClientScript.GetPostBackEventReference(grvKanban, "Select$" + i) + ";checkKey()");

在.aspx页面的正文中,代码如下(如果在gridview中单击任意行时按下control键,则curKey的值为17):

<body onkeyup = "curKey = null;" onkeydown = "curKey=event.keyCode;">

对于隐藏字段,代码是:

<asp:HiddenField ID="CtrlKeyPressed" runat="server"/>

基本上我想知道在选择 gridview 行时是否按下了 Ctrl 键,我想用隐藏字段的值来查找该行。但在后面的代码中,当我尝试获取 CtrlKeyPressed.Value 的值时,它是空字符串。

谁能帮忙解决这个问题吗?

谢谢!!!

最佳答案

您需要在回发之前运行checkKey()。所以改变这个:

gridview.Rows[i].Attributes.Add("onclick",
ClientScript.GetPostBackEventReference(grvKanban, "Select$" + i) +
";checkKey()");

对此:

gridview.Rows[i].Attributes.Add("onclick",
"checkKey();" +
ClientScript.GetPostBackEventReference(grvKanban, "Select$" + i));

关于c# - 即使在 javascript 中设置了值之后, <asp.HiddenField> 值在代码隐藏中仍为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20611914/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com