GridView,当某行进入编辑状态时,如何限制某个输入框中只能输入8位数字才能更新对应的数据库表?

ynduanlian 2011-05-09 01:28:54
GridView,当某行进入编辑状态时,如何限制某个输入框中只能输入8位数字才能更新对应的数据库表?
...全文
474 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
子夜__ 2011-05-09
  • 打赏
  • 举报
回复
js 来判断吧

var gv=document.getElementById("<%=gridView1.ClientID%>");
if(gv!=null)
{
var el=gv.getElementsByTagName("input");
for(var i=0;i<el.length;i++)
{
if(el[i].type=="textbox")
{
alert(el[i].value);//获得值判断
}
}

}
shaoguangminghan 2011-05-09
  • 打赏
  • 举报
回复
gridview编辑模板,加个验证控件,用正则来判断,我正则写不来
Lisliefor 2011-05-09
  • 打赏
  • 举报
回复
GridView添加OnRowDataBound事件。

事件委托代码:

protected void vg_rowbound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType != DataControlRowType.Header && e.Row.RowType != DataControlRowType.Footer)
{
TextBox tb = e.Row.FindControl("InputId") as TextBox;
if (tb != null)
tb.MaxLength = 8;

// 或者用下面的方法处理,假设GridView中最后一列操作列有一个Update的按钮,编辑值后,点击Update按钮保存修改,在这里为update按钮添加校验js
LinkButton lb = e.Row.FindControl("UpdateBtn") as LinkButton;
if (lb != null && tb != null)
lb.Attributes.Add("onclick", "javascript:if('" + tb.Text.Trim() + "'.length > 8) return;");
}
}


以上代码只是一个思路,没有验证过,LZ可以调试下。
蝶恋花雨 2011-05-09
  • 打赏
  • 举报
回复
在 GridView1_RowUpdating里面

例如:string card = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TBCard")).Text;
判断长度。或者直接在文本框那用JS 验证。
浙外 2011-05-09
  • 打赏
  • 举报
回复
首先将输入框所在列变为模板列,然后你就可以直接修改编辑状态下的东西,加个长度限制(正则验证控件最方便了)
Ni_Yang 2011-05-09
  • 打赏
  • 举报
回复
GridView 源里 有 <EditItemTemplate>的一个东西。这里放的都是呈现在编辑状态时候的东西,。把里面那个TXTBOX 的属性设置只能填写8个字符就OK了。
  • 打赏
  • 举报
回复
GridView不会用,帮顶。
tomscat 2011-05-09
  • 打赏
  • 举报
回复
用验证控件

62,046

社区成员

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

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

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

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