我正在为ASP.NET TextBox使用JavaScript虚拟键盘。但是使用TextBox可以选择使用系统键盘。我试图使用ASP.NET标签,但它不起作用。有没有办法严格使用虚拟键盘。
答案 0 :(得分:3)
让您的文本框只读。
这样您的用户无法输入,但虚拟键盘中的javascript可以写入。这不是一个非常好的lokking用户界面。
第二个技巧是使用onkeypress并删除密钥。按下该键时,您可以在TextBox上添加window.event.keyCode=0
并重置每个用户输入。
onkeypress="window.event.keyCode=0;return false;"
喜欢这个
<asp:TextBox runat="server" ID="txtTest2"
onkeypress="window.event.keyCode=0;return false;"></asp:TextBox>
这适用于所有浏览器。我测试了chrome,firefox,即
<script>
function DisableKeyboardOnMe(e)
{
try
{
if (window && window.event)
window.event.keyCode = 0;
else
e.which = 0;
}
catch(e){}
return false;
}
</script>
和
<asp:TextBox runat="server" ID="txtTest3"
onkeypress="return DisableKeyboardOnMe(event);">test</asp:TextBox>
我在所有浏览器上测试过,这也很有用。
<asp:TextBox runat="server" ID="txtTest4"
onkeypress="return false;"></asp:TextBox>