用Javascript验证文本,要求只能输入正整数

lw_881020 2010-08-05 10:31:20
用Javascript验证文本,要求只能输入正整数
请教function怎么写?怎么通过一个LinkButton调用?
<script
这里怎么写?
</script>
<asp:LinkButton ID="LinkButton3" runat="server" OnClick="LinkButton3_Click" OnClientClick="这里怎么写?" >转到</asp:LinkButton>
<asp:TextBox ID="TextBox1" runat="server" Columns="4"></asp:TextBox>
...全文
1414 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
YnSky 2010-08-05
  • 打赏
  • 举报
回复
把服务器换成HTML控件,加个runat="server",就和服务器控件一样了.然后
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>

<script src="jquery-1.3.2-vsdoc.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
var a = $("#Text1");
$("#Text1").blur(function(){

var value = a.val();
if((/^(\+|-)?\d+$/.test( value )) && value>0)
{

}
else
{
alert("只能是正整数");
}
})
});
</script>
</head>
<body>
<form id="form1" runat="server">
<input id="Text1" type="text" />



</form>
</body>
</html>
天下如山 2010-08-05
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 lw_881020 的回复:]
我没有这个JS文件 jquery-1.3.2-vsdoc.js

引用 6 楼 porschev 的回复:
HTML code

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//……
[/Quote]
去网上下个。 12楼的应该正确。
booth.chen 2010-08-05
  • 打赏
  • 举报
回复
<input type='text' onkeyup='this.value=this.value.replace(/[^1-9]\D*$/,"")' ondragenter="return false" onpaste="return !clipboardData.getData('text').match(\D/)"" style="ime-mode:disabled;">
Roy99 2010-08-05
  • 打赏
  • 举报
回复

<script type="text/javascript">
function Check()
{
document.getElementById("<%=TextBox1.ClientID%>").value = document.getElementById("<%=TextBox1.ClientID%>").value.replace(/^0+/ig, "");
if(/^[1-9][0-9]*$/.test(document.getElementById("<%=TextBox1.ClientID%>").value){ return true;}else{return false}
}
</script>

<asp:LinkButton ID="LinkButton3" runat="server" OnClick="LinkButton3_Click" OnClientClick="这里怎么写?" >转到</asp:LinkButton>
<asp:TextBox ID="TextBox1" runat="server" Columns="4"></asp:TextBox>
zakumiwb 2010-08-05
  • 打赏
  • 举报
回复


难道上面的 都不能用吗?
lw_881020 2010-08-05
  • 打赏
  • 举报
回复
不能把,就这样沉了?
lw_881020 2010-08-05
  • 打赏
  • 举报
回复
function IsNum(){
var str=document.getElementById("TextBox1").value;
var r = /^[0-9]*[1-9][0-9]*$/
if(r.test(str))
{
return true;
}
else
{
alert('请输入正数.');
return false;
}
}
这样可以吗
lw_881020 2010-08-05
  • 打赏
  • 举报
回复
我用的asp服务器控件,没onkeyup这个属性的
[Quote=引用 9 楼 xzwms2010 的回复:]
限制控件只能输入正整数,使用:控件里面加上 onkeyup="fillNumOnly(this)" */

function fillNumOnly(obj) {

var str = obj.value;

if (trim(str) == "")

return;

if (/[^0-9]/g.test(str)) {

obj.value = st……
[/Quote]
diandian82 2010-08-05
  • 打赏
  • 举报
回复
小MM的方法不错
xzwms2010 2010-08-05
  • 打赏
  • 举报
回复
限制控件只能输入正整数,使用:控件里面加上 onkeyup="fillNumOnly(this)" */

function fillNumOnly(obj) {

var str = obj.value;

if (trim(str) == "")

return;

if (/[^0-9]/g.test(str)) {

obj.value = str.substr(0, str.length - 1);

}

}
lw_881020 2010-08-05
  • 打赏
  • 举报
回复
我没有这个JS文件 jquery-1.3.2-vsdoc.js
[Quote=引用 6 楼 porschev 的回复:]
HTML code

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xh……
[/Quote]
脾气不坏 2010-08-05
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 porschev 的回复:]

HTML code

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtm……
[/Quote]
+1 正则表达式
porschev 2010-08-05
  • 打赏
  • 举报
回复

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>

<script src="jquery-1.3.2-vsdoc.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
var a = $("#Text1");
$("#Text1").blur(function(){

var value = a.val();
if((/^(\+|-)?\d+$/.test( value )) && value>0)
{

}
else
{
alert("只能是正整数");
}
})
});
</script>
</head>
<body>
<form id="form1" runat="server">
<input id="Text1" type="text" />



</form>
</body>
</html>

leejelen 2010-08-05
  • 打赏
  • 举报
回复
^\+\d+$
sh_suyuelin 2010-08-05
  • 打赏
  • 举报
回复

//大概就这么写的。不知道写错没
var str=document.getElementById("<%=TextBox1.ClientID%>").value;
if(str>=0)
{
return true;
}
else
{
alert('请输入正数.');
return false;
}
专爆菜鸟 2010-08-05
  • 打赏
  • 举报
回复
正则表达式验证就可以了
pdsnet 2010-08-05
  • 打赏
  • 举报
回复
^\\d{6}$  长度你指定
lw_881020 2010-08-05
  • 打赏
  • 举报
回复
要求TextBox1中只能输入正整数?这么简单。。

62,073

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧