当前位置:编程学习 > C#/ASP.NET >>

gridview的使用

在gridview中插入了模板列,又在模板列中插入了textbox,并且插入了buttonfield列,想在点击buttonfield列的时候,判断textbox是否为空,若为空则进行相应的提示,非空则继续进行其他操作,该怎么做 --------------------编程问答-------------------- 你可以做JS的也可以做后台的判断,这样的例子在坛子里面很多 百度几下全出来了 --------------------编程问答--------------------

  protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
  {
      int i = Convert.ToInt32(e.CommandArgument);
      Control c = GridView1.Rows[i].FindControl("TextBox2");
      if (c != null)
      {
          Response.Write("<script>alert('" + ((TextBox)c).Text + "');</script>");
      }
  }
--------------------编程问答-------------------- 我是个菜鸟,js和ajax还太不会用,开始现在急需把这个功能加进去,可不可以直接在点击buttonfield列中的button时判断,就像普通button的onclik事件中,普通的textbox可以判断其是否为空一样 --------------------编程问答--------------------
引用 3 楼  的回复:
我是个菜鸟,js和ajax还太不会用,开始现在急需把这个功能加进去,可不可以直接在点击buttonfield列中的button时判断,就像普通button的onclik事件中,普通的textbox可以判断其是否为空一样

给你的代码就是,按钮列是通过 RowCommand 事件触发的 --------------------编程问答--------------------
引用 2 楼  的回复:
C# code

  protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
  {
      int i = Convert.ToInt32(e.CommandArgument);
      Control c = GridView1.Rows[i].FindControl("TextB……

你还是贴全吧, 控件CommandArgument属性绑定,GridView的RowCommand方法绑定。
RowCommand当GridView生成事件时激发。 --------------------编程问答-------------------- 建议使用JS来实现,可以避免页面的刷新问题。 --------------------编程问答-------------------- protected void btnOpenClick(object sender, GridViewCommandEventArgs e)
{    
    if (e.CommandName == "OpenRow")  //如果是OpenRow按纽 
        {

            int RowIndex = Convert.ToInt32(e.CommandArgument);  
            DataKey keys = bookshowGridView.DataKeys[RowIndex]; 
            string id = keys.Values["bookid"].ToString();

            bookmessageTableAdapter adepter1 = new bookmessageTableAdapter();
            buycarTableAdapter adepter2 = new buycarTableAdapter();
            bookgl.bookmessageDataTable btable = adepter1.GetDataByID(id);
            bookgl.bookmessageRow brow = btable[0];

            string name = brow.bookname.ToString();
            string pri = brow.bookpri.ToString();
            string busername = Session["username"].ToString();

            Control c = bookshowGridView.Rows[RowIndex].FindControl("goumainum");

            if (c==null)
            {
                Response.Write("<script language='javascript'>alert('请输入购买数量');</script>");
            }
            else
            {
                TextBox tb = (TextBox)c;
                string num = tb.Text.ToString();

                int money = Convert.ToInt32(num) * Convert.ToInt32(pri);
                string buymoney = money.ToString();

                adepter2.InsertQuery(busername, id, name, num, buymoney);
            }

        }
}
我的代码是这样的,当textbox里有值的时候可以运行,但是当textbox为空的时候,出现错误,错误信息是“System.FormatException: 输入字符串的格式不正确。”,是我的代码写的不正确吗?

--------------------编程问答-------------------- 学了些js,就用js做了一下,我在gridview中加了一模板列,在模板列中加入了textbox控件,用于输入数量,但是提交时需判断其是否为空,只有不为空的时候才能提交,我用js写了判断,但是一直提示网页上有错误,求各位高手指点,是我哪儿写错了吗?在asp中使用js和在html中有什么不同吗?求指点,谢谢。以下是我的部分代码:
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>无标题页</title>

<script language="javascript" type="text/javascript" > 
function   Check() 

    var numveri = document.form1.goumainum.value;  

    if(numveri=="") 
    { 
        alert( "购买数量不能为空! "); 
        document.form1.goumainum.focus(); 
        return alse; 
    }
    else
        return ture;

</script> 
</head>
<body>
    <form id="form1" runat="server" onsubmit="Check();">
……
//gridview中的模板列
<asp:TemplateField HeaderText="购买数量" >
                    <ItemTemplate>
                        <asp:TextBox ID="goumainum" runat="server" ></asp:TextBox>
                    </ItemTemplate>
…… --------------------编程问答-------------------- 解决了,但是onclick事件还是触发了 --------------------编程问答-------------------- 其实2楼 已经写得很详细了  你还可以 通过 按钮的 onclientclick 事件 写个js验证 --------------------编程问答-------------------- 写前台脚本比较好,可防止页面刷新的问题。 --------------------编程问答-------------------- 我就是在前台写的,可是onclick事件依旧执行,我找到原因了,就是无论textbox判断的结果怎么样,都不妨碍onclick事件的执行,我就迷茫了 --------------------编程问答-------------------- 我弄明白了,就是判断出textbook为空之后并未阻止onclick事件的执行,不知道为什么
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,