我用的是服务器端控件
只能输入数字、字母和汉字
其他都不可以输入?
25 个解决方案
#1
可以用正则表达式验证。
#2
能说的详细点吗?
#3
能说的详细点吗?
#4
比如
什么事件
或什么属性下
写什么样的正则
什么事件
或什么属性下
写什么样的正则
#5
[0-9]|[a-zA-Z]|[\u4e00-\u9fa5]
#6
谢谢5楼的回复
但能说的详细点吗?
比如怎么用这个正则
我用的是服务器端控件
但能说的详细点吗?
比如怎么用这个正则
我用的是服务器端控件
#7
怎么做呀?求助呀!
#8
自己顶
#9
这个东西,我觉得,是不是你自己斟酌放哪个事件里面做校验比较好啊?
例如服务器端的文本控件有OnTextChanged事件,然后你在里面使用正则表达式来做校验。或者是在提交事件中做全部的控件的内容校验。
例如服务器端的文本控件有OnTextChanged事件,然后你在里面使用正则表达式来做校验。或者是在提交事件中做全部的控件的内容校验。
#10
我的意思是
只要是特殊字符
连输入都不让你输入
怎么按键盘都不能进入到文本框中去
好的,我斟酌一下
谢谢9楼的建议
只要是特殊字符
连输入都不让你输入
怎么按键盘都不能进入到文本框中去
好的,我斟酌一下
谢谢9楼的建议
#11
<body>
<script type="text/javascript">
function regInput(reg)
{
var srcElem = event.srcElement
var oSel = document.selection.createRange()
var srcRange = srcElem.createTextRange()
oSel.setEndPoint("StartToStart", srcRange)
var num = oSel.text + String.fromCharCode(event.keyCode) + srcRange.text.substr(oSel.text.length)
event.returnValue = reg.test(num);
}
</script><input type="text" onKeyPress="regInput(/^[0-9]*$/)" /></form>
这种方法很好用,但是在Firefox不起作用,因为firefox下不识event该事件,当然,你可以参照第二个例子改一下也行.
第二种:
<body>
<script type="text/javascript">
function noNumbers(e)
{
var keynum;
var keychar;
var numcheck;
if(window.event) // IE
{
keynum = e.keyCode;
}
else if(e.which) // Netscape/Firefox/Opera
{
keynum = e.which;
}
keychar = String.fromCharCode(keynum);
numcheck = /\d/;
return !numcheck.test(keychar);
}
</script>
<input type="text" onkeypress="return noNumbers(event)" />
</form>
这个例子只允许输入字母,想改成只输入数字吗?很简单,把
return !numcheck.test(keychar);改成:
return numcheck.test(keychar);即可
自己改吧
#12
在KEYDOWN 事件中判断输入的字符,
private void textbox1.keydown(object sebder,eventargs e)
{
if(e.keycode<48 && e.keycode>57 && e.keycode<65 && e.keycode>90 && e.keycode<97 && e.keycode>122 )
messagebox.show("请输入字母数字","error");
textbox1.clear();
textbox1.focus();
return;
}
当然还可以用正则表达式
[0-9a-zA-Z\u4e00-\u9fa5]
private void textbox1.keydown(object sebder,eventargs e)
{
if(e.keycode<48 && e.keycode>57 && e.keycode<65 && e.keycode>90 && e.keycode<97 && e.keycode>122 )
messagebox.show("请输入字母数字","error");
textbox1.clear();
textbox1.focus();
return;
}
当然还可以用正则表达式
[0-9a-zA-Z\u4e00-\u9fa5]
#13
^[^\[\'\,\%\]]{0,}$ 正则表达式
#14
只能输入数字、字母和汉字
只要是特殊字符
连输入都不让你输入
怎么按键盘都不能进入到文本框中去
服务器端控件不可以做的是吧?
只要是特殊字符
连输入都不让你输入
怎么按键盘都不能进入到文本框中去
服务器端控件不可以做的是吧?
#15
onkeyup 时间中
value=value.replace(正则表达)
value=value.replace(正则表达)
#16
求
正则表达式
#17
意思就是你输入了特殊字符,自动用 空 覆盖
#18
/^\\\\([^\\]+\\?)+$/
不是很确定
我在网上找的
不是很确定
我在网上找的
#19
前台:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
后台:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
后台:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
this.TextBox1.Attributes.Add("onkeyup",@"value=value.replace(/[^\w\u4E00-\u9FA5]/g,'')");
}
}
#20
楼主请及时结贴。
#21
前台JS验证或者直接用服务器验证控件都可以
#22
谢谢19楼
接分吧
#23
微软服务器控件不是有一个自带的自定义验证控件吗?你可以试试!!!
#24
看看,不过最后在后台判断比较好,前后觉得可以省略
#25
使用ajax验证控件可以实现,而且后台不用做操作
#1
可以用正则表达式验证。
#2
能说的详细点吗?
#3
能说的详细点吗?
#4
比如
什么事件
或什么属性下
写什么样的正则
什么事件
或什么属性下
写什么样的正则
#5
[0-9]|[a-zA-Z]|[\u4e00-\u9fa5]
#6
谢谢5楼的回复
但能说的详细点吗?
比如怎么用这个正则
我用的是服务器端控件
但能说的详细点吗?
比如怎么用这个正则
我用的是服务器端控件
#7
怎么做呀?求助呀!
#8
自己顶
#9
这个东西,我觉得,是不是你自己斟酌放哪个事件里面做校验比较好啊?
例如服务器端的文本控件有OnTextChanged事件,然后你在里面使用正则表达式来做校验。或者是在提交事件中做全部的控件的内容校验。
例如服务器端的文本控件有OnTextChanged事件,然后你在里面使用正则表达式来做校验。或者是在提交事件中做全部的控件的内容校验。
#10
我的意思是
只要是特殊字符
连输入都不让你输入
怎么按键盘都不能进入到文本框中去
好的,我斟酌一下
谢谢9楼的建议
只要是特殊字符
连输入都不让你输入
怎么按键盘都不能进入到文本框中去
好的,我斟酌一下
谢谢9楼的建议
#11
<body>
<script type="text/javascript">
function regInput(reg)
{
var srcElem = event.srcElement
var oSel = document.selection.createRange()
var srcRange = srcElem.createTextRange()
oSel.setEndPoint("StartToStart", srcRange)
var num = oSel.text + String.fromCharCode(event.keyCode) + srcRange.text.substr(oSel.text.length)
event.returnValue = reg.test(num);
}
</script><input type="text" onKeyPress="regInput(/^[0-9]*$/)" /></form>
这种方法很好用,但是在Firefox不起作用,因为firefox下不识event该事件,当然,你可以参照第二个例子改一下也行.
第二种:
<body>
<script type="text/javascript">
function noNumbers(e)
{
var keynum;
var keychar;
var numcheck;
if(window.event) // IE
{
keynum = e.keyCode;
}
else if(e.which) // Netscape/Firefox/Opera
{
keynum = e.which;
}
keychar = String.fromCharCode(keynum);
numcheck = /\d/;
return !numcheck.test(keychar);
}
</script>
<input type="text" onkeypress="return noNumbers(event)" />
</form>
这个例子只允许输入字母,想改成只输入数字吗?很简单,把
return !numcheck.test(keychar);改成:
return numcheck.test(keychar);即可
自己改吧
#12
在KEYDOWN 事件中判断输入的字符,
private void textbox1.keydown(object sebder,eventargs e)
{
if(e.keycode<48 && e.keycode>57 && e.keycode<65 && e.keycode>90 && e.keycode<97 && e.keycode>122 )
messagebox.show("请输入字母数字","error");
textbox1.clear();
textbox1.focus();
return;
}
当然还可以用正则表达式
[0-9a-zA-Z\u4e00-\u9fa5]
private void textbox1.keydown(object sebder,eventargs e)
{
if(e.keycode<48 && e.keycode>57 && e.keycode<65 && e.keycode>90 && e.keycode<97 && e.keycode>122 )
messagebox.show("请输入字母数字","error");
textbox1.clear();
textbox1.focus();
return;
}
当然还可以用正则表达式
[0-9a-zA-Z\u4e00-\u9fa5]
#13
^[^\[\'\,\%\]]{0,}$ 正则表达式
#14
只能输入数字、字母和汉字
只要是特殊字符
连输入都不让你输入
怎么按键盘都不能进入到文本框中去
服务器端控件不可以做的是吧?
只要是特殊字符
连输入都不让你输入
怎么按键盘都不能进入到文本框中去
服务器端控件不可以做的是吧?
#15
onkeyup 时间中
value=value.replace(正则表达)
value=value.replace(正则表达)
#16
求
正则表达式
#17
意思就是你输入了特殊字符,自动用 空 覆盖
#18
/^\\\\([^\\]+\\?)+$/
不是很确定
我在网上找的
不是很确定
我在网上找的
#19
前台:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
后台:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
后台:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
this.TextBox1.Attributes.Add("onkeyup",@"value=value.replace(/[^\w\u4E00-\u9FA5]/g,'')");
}
}
#20
楼主请及时结贴。
#21
前台JS验证或者直接用服务器验证控件都可以
#22
谢谢19楼
接分吧
#23
微软服务器控件不是有一个自带的自定义验证控件吗?你可以试试!!!
#24
看看,不过最后在后台判断比较好,前后觉得可以省略
#25
使用ajax验证控件可以实现,而且后台不用做操作