在gridview里施用了textbox控件,但是值修改不了,为什么呢
在gridview里使用了textbox控件,但是值修改不了,为什么呢我绑定数据的时候使用了textbox控件。现在的操作是
在gridview里使用了textbox控件,但是值修改不了,为什么呢
我绑定数据的时候使用了textbox控件。现在的操作是批量修改textbox中的值,然后提交。可是提交后得到的textbox的值,仍然是修改之前的值,请问是为什么呢?
前台的代码是这样的
提交按钮的后台代码是这样的
TextBox tb;
string nos = ""; //题目题号
string Question_id = "";//题目序号
for (int i = 0; i < gridview1.Rows.Count; i++)
{
tb = (TextBox)gridview1.Rows[i].FindControl("TextBox1");
nos = tb.Text.ToString();
Question_id = gridview1.Rows[i].Cells[1].Text.ToString();
Response.Write("<script>alert('"+nos.ToString()+","+Question_id+"')</script>");
}
现在把textbox的值修改了,然后点击提交,可是得到的值还是修改前的,请问是怎么呢?
[解决办法]还有一个原因,注释是否在page_load中,每次都是直接重新绑定数据源,擅用Page.IsPostBack
[解决办法]page_load
if(!ispostback)
[解决办法]我告诉你一个可以直接辨别一个人是否真正学会了asp.net编程的简单方法,这可以帮助你在编程时少走弯路。
你可以拖入一个Button到页面上,双击它使得vs自动产生后台处理程序。但是程序里可以什么代码都不写,就让它什么都不干。这个Button只是为了让页面回发一次而已。
显然,如果你在运行自己的asp.net页面的时候,如果随时点击这个Button,由于它在服务器端什么都不干,那么你的页面就应该再次刷新时仍然保持当前的状态。对吧?!也就是说如果你当前正在编辑GridView一行时,你点击了这个按钮,那么刷新之后GridView的内容完全不变,而且原来的编辑行仍然处于编辑状态。
而且点击这个button时,显然也不会向数据库写入任何数据,也不会浪费时间去查询数据库。
你设计页面时可以随时点击这个Button,如果你发现页面上的数据乱了(比如说变成原来的数据了),或者读写了数据库,那么就不要再写新的asp.net程序了,赶紧解决这个问题吧!
能够这样时时刻刻经得起这个简单的Button测试的程序员,才是一个合格的asp.net程序员。你应该这样来学习,才能保证不被那些坑爹的博客文章、入门书籍给骗了。