Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript onkeyup事件似乎未触发或被忽略_Javascript_C#_Asp.net - Fatal编程技术网

Javascript onkeyup事件似乎未触发或被忽略

Javascript onkeyup事件似乎未触发或被忽略,javascript,c#,asp.net,Javascript,C#,Asp.net,我有这个: txtNew.Attributes.Add("onkeyup", "alert('hi');"); 但当我在文本框中输入时,不会出现警报。我只是一个接一个地打字,从来没有出现过警报。为什么这不起作用 在IE 11、Chrome 42.0和FF 37.0中试用。使用.NET4.0 还尝试了“onkeypress”事件。同样的结果。我无法让警报出现 文本框定义为: asp:TextBox ID="txtNew" TextMode="Password" runat="server" Ma

我有这个:

txtNew.Attributes.Add("onkeyup", "alert('hi');");
但当我在文本框中输入时,不会出现警报。我只是一个接一个地打字,从来没有出现过警报。为什么这不起作用

在IE 11、Chrome 42.0和FF 37.0中试用。使用.NET4.0

还尝试了“
onkeypress
”事件。同样的结果。我无法让警报出现

文本框定义为:

asp:TextBox ID="txtNew" TextMode="Password" runat="server" MaxLength="256
尝试删除TextMode属性,但结果仍然相同

最后,我想做的是:

txtNew.Attributes.Add("onkeyup", "CheckChars()");

其中
CheckChars()
是我的JS脚本。然而,当它不起作用时,我只是在里面放了一个“
警报()
”,看看它是否能起作用

在javascript中,不能仅引用控件的ID来引用它。您需要使用

var txtNew = document.getElementById("txtNew");
txtNew.Attributes.Add("onkeyup", "alert('hi');");

编辑:实际上,这段代码是在javascript中还是在codebehind中?问题还不清楚。

您是否查看了呈现的HTML,以查看您的属性是否以任何形式出现在文本框中?何时添加属性(在哪个事件处理程序中)?请尝试txtNew.Attributes[“onclick”]=“alert(“Hello World”);尚未测试,但应能正常工作您是在codebehind(从.cs页面)中尝试此操作还是在javascript(在客户端)中尝试此操作?此行(attributes.add)位于codebehind中的page_Load中。然后再次运行该页面,并检查生成的代码。查找ASP.NET为您呈现的文本框,并查看您的自定义属性是否存在。