下面是在textBox中用半角输入"'<>& 符号时,自动变成全角的程序,
但是有一个问题,
就是当用全角输入时,delete,上下箭头等键无效,
请高手帮忙指点一下,谢谢!
function CTS_Kdown()
{
if(event.srcElement.eventBeforeKdown != null)
{
eval(event.srcElement.eventBeforeKdown);
}
//エンターキーでTAB移動 if((window.event.keyCode == 108) || (window.event.keyCode == 13))
{ event.keyCode = 9; }
//禁則文字("'<>&)の場合、全角に変換
if(event.srcElement.zen == "0")
{
event.srcElement.value = CTS_ChkZen(event.srcElement.value);
}
if(event.srcElement.eventAfterKdown != null)
{
eval(event.srcElement.eventAfterKdown);
}
}
//禁則文字("'<>&)の場合、全角に変換
function CTS_ChkZen(src)
{
var i, code;
var str = new String;
var len = src.length;
for (i = 0; i < len; i++)
{
code = src.charAt(i);
if (code == "<" || code == ">" || code == "'" || code == "\"" || code == "&")
{
str += String.fromCharCode(src.charCodeAt(i) + 65248) ;
}
else
{
str += code;
}
}
return str;
}
但是有一个问题,
就是当用全角输入时,delete,上下箭头等键无效,
请高手帮忙指点一下,谢谢!
function CTS_Kdown()
{
if(event.srcElement.eventBeforeKdown != null)
{
eval(event.srcElement.eventBeforeKdown);
}
//エンターキーでTAB移動 if((window.event.keyCode == 108) || (window.event.keyCode == 13))
{ event.keyCode = 9; }
//禁則文字("'<>&)の場合、全角に変換
if(event.srcElement.zen == "0")
{
event.srcElement.value = CTS_ChkZen(event.srcElement.value);
}
if(event.srcElement.eventAfterKdown != null)
{
eval(event.srcElement.eventAfterKdown);
}
}
//禁則文字("'<>&)の場合、全角に変換
function CTS_ChkZen(src)
{
var i, code;
var str = new String;
var len = src.length;
for (i = 0; i < len; i++)
{
code = src.charAt(i);
if (code == "<" || code == ">" || code == "'" || code == "\"" || code == "&")
{
str += String.fromCharCode(src.charCodeAt(i) + 65248) ;
}
else
{
str += code;
}
}
return str;
}
最好先编码,然后
在web.config设置下
<pages validateRequest="false" > </pages>
就ok啦!