问题描述
|
在keydown事件中,如果文本框不可编辑,则该文本位于中间。当我在文本框中编写任何内容时,它都将在最右边进行写入,而不是在我尝试编写的位置。另外,我编写了一个仅用大写字母表示字符的功能,但是除非我们通过制表符更改文本框,否则最后写的字母不会大写。
protected void Page_Load(object sender,EventArgs e)
{
TextBox1.Attributes.Add(\"onkeydown\",\"javascript:return descrip(this.value)\");
}
在ASPx源代码中,它描述了我编写的功能:
<script type=\"text/javascript\" language=\"javascript\">
<!--
function descrip(text)
{document.form1.TextBox1.value=text.toupperCase();
}
//-->
</script>
解决方法
this.value
尚未更改(@ onkeydown事件)
因此,只需将其更改为:
TextBox1.Attributes.Add(\"onkeyup\",\"descrip(this.value)\");
值更新后会触发onkeyup。
不需要返回,因为没有取消/返回的内容。
javascript:不需要,onkeyup需要javascript代码。