using System; using System.Data; using System.Data.SqlClient; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; namespace WebApplication1 { public partial class Default0 : System.Web.UI.Page { //绑定 public void bind() { string sqlstr = "select * from selectsql"; SqlDataAdapter myda = new SqlDataAdapter(sqlstr, DBHelper.objConnection); DataSet myds = new DataSet(); DBHelper.objConnection.Open(); myda.Fill(myds, "selectsql"); GridView1.DataSource = myds; GridView1.DataKeyNames = new string[] { "id" };//主键 GridView1.DataBind(); DBHelper.objConnection.Close(); } protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { bind(); } } protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) { GridView1.EditIndex = e.NewEditIndex; bind(); } //更新:弹出编辑框,提供更新 protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) { /* GridView GridView1 = new GridView(); string aa = GridView1.DataKeys[e.RowIndex].Value.ToString(); string sqlstr = "update selectsql set name='" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim() + "',password='" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim() + "' where id='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'"; SqlCommand sqlcom = new SqlCommand(sqlstr, DBHelper.objConnection); DBHelper.objConnection.Open(); sqlcom.ExecuteNonQuery(); DBHelper.objConnection.Close(); GridView1.EditIndex = -1; bind();*/ } protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) { GridView1.EditIndex = -1; bind(); } //删除,无问题 protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) { string sqlstr = "delete from selectsql where id='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'"; SqlCommand sqlcom = new SqlCommand(sqlstr, DBHelper.objConnection); DBHelper.objConnection.Open(); sqlcom.ExecuteNonQuery(); DBHelper.objConnection.Close(); bind(); } //层添加,问题:无法获取需要编辑的行号!!!!!! protected void BtnCommite_Click(object sender, EventArgs e) { string sqlstr = string.Format("update selectsql set name='" + TxtTitle.Text.ToString().Trim() + "',password='" + TxtContent.Text.ToString().Trim() + "' where id='" + GridView1.DataKeys[2].Value.ToString() + "'");//当前行的值 ,无法获取到 SqlCommand sqlcom = new SqlCommand(sqlstr, DBHelper.objConnection); DBHelper.objConnection.Open(); sqlcom.ExecuteNonQuery(); DBHelper.objConnection.Close(); GridView1.EditIndex = -1; bind(); } protected void lbToWho_DataBinding(object sender, EventArgs e) { } } } <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default0.aspx.cs" Inherits="WebApplication1.Default0" %><!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>
</head>
<body> <script type="text/javascript" language="javascript"> function ShowNo() //隐藏两个层
{
document.getElementById("doing").style.display = "none";
document.getElementById("divLogin").style.display = "none";
} function $(id) {
return (document.getElementById) ? document.getElementById(id) : document.all[id];
}
function showFloat() //根据屏幕的大小显示两个层
{
var range = getRange();
//document.getElementById("hidID").value=id
$('doing').style.width = range.width + "px";
$('doing').style.height = range.height + "px";
$('doing').style.display = "block";
document.getElementById("divLogin").style.display = "";
}
function getRange() //得到屏幕的大小
{
var top = document.body.scrollTop;
var left = document.body.scrollLeft;
var height = document.body.clientHeight;
var width = document.body.clientWidth;
if (top == 0 && left == 0 && height == 0 && width == 0) {
top = document.documentElement.scrollTop;
left = document.documentElement.scrollLeft;
height = document.documentElement.clientHeight;
width = document.documentElement.clientWidth;
}
return { top: top, left: left, height: height, width: width };
}
</script> <form id="form1" runat="server">
<div id="doing" style="filter: alpha(opacity=30); -moz-opacity: 0.3; opacity: 0.3;
background-color: #000; width: 100%; height: 100%; z-index: 1000; position: absolute;
left: 0; top: 0; display: none; overflow: hidden;">
</div>
<div id="divLogin" style="border: solid 10px #898989; background: #fff; padding: 10px;
width: 780px; z-index: 1001; position: absolute; display: none; top: 50%; left: 50%;
margin: -200px 0 0 -400px;">
<div style="padding: 3px 15px 3px 15px; text-align: left; vertical-align: middle;">
<div>
<br />
<br />
用户姓名:
<asp:TextBox ID="TxtTitle" runat="server" Width="349px">
</asp:TextBox>
</div>
<br />
<div>
密 码:
<asp:TextBox ID="TxtContent" runat="server" Width="349px"></asp:TextBox>
</div>
<br />
<div>
<asp:Button ID="BtnCommite" runat="server" Text="确定" OnClick="BtnCommite_Click" />
<input id="BttCancel" type="button" value="关 闭" onclick="ShowNo()" />
</div>
</div>
</div>
<div>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="3" DataKeyNames="id"
GridLines="Horizontal" OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing"
OnRowUpdating="GridView1_RowUpdating" OnRowCancelingEdit="GridView1_RowCancelingEdit"
BackColor="White" BorderColor="#E7E7FF" BorderStyle="None" BorderWidth="1px"
Width="752px" Height="150px">
<FooterStyle BackColor="#B5C7DE" ForeColor="#4A3C8C" />
<Columns>
<asp:BoundField DataField="id" HeaderText="用户ID" ReadOnly="True" />
<asp:BoundField DataField="name" HeaderText="用户姓名" />
<asp:BoundField DataField="password" HeaderText="密码" />
<asp:CommandField HeaderText="选择" ShowSelectButton="True" />
<asp:CommandField HeaderText="编辑" ShowEditButton="True"
EditText='<a href="javascript:void(0)" onclick="showFloat()">编辑</a>' />
<asp:CommandField HeaderText="删除" ShowDeleteButton="True" DeleteText="<div id="de" onclick="JavaScript:return confirm('确定删除吗?')">删除</div> " />
</Columns>
<RowStyle ForeColor="#4A3C8C" BackColor="#E7E7FF" />
<SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="#F7F7F7" />
<PagerStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" HorizontalAlign="Right" />
<HeaderStyle BackColor="#4A3C8C" Font-Bold="True" ForeColor="#F7F7F7" />
<AlternatingRowStyle BackColor="#F7F7F7" />
</asp:GridView>
</div>
</form>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body> <script type="text/javascript" language="javascript"> function ShowNo() //隐藏两个层
{
document.getElementById("doing").style.display = "none";
document.getElementById("divLogin").style.display = "none";
} function $(id) {
return (document.getElementById) ? document.getElementById(id) : document.all[id];
}
function showFloat() //根据屏幕的大小显示两个层
{
var range = getRange();
//document.getElementById("hidID").value=id
$('doing').style.width = range.width + "px";
$('doing').style.height = range.height + "px";
$('doing').style.display = "block";
document.getElementById("divLogin").style.display = "";
}
function getRange() //得到屏幕的大小
{
var top = document.body.scrollTop;
var left = document.body.scrollLeft;
var height = document.body.clientHeight;
var width = document.body.clientWidth;
if (top == 0 && left == 0 && height == 0 && width == 0) {
top = document.documentElement.scrollTop;
left = document.documentElement.scrollLeft;
height = document.documentElement.clientHeight;
width = document.documentElement.clientWidth;
}
return { top: top, left: left, height: height, width: width };
}
</script> <form id="form1" runat="server">
<div id="doing" style="filter: alpha(opacity=30); -moz-opacity: 0.3; opacity: 0.3;
background-color: #000; width: 100%; height: 100%; z-index: 1000; position: absolute;
left: 0; top: 0; display: none; overflow: hidden;">
</div>
<div id="divLogin" style="border: solid 10px #898989; background: #fff; padding: 10px;
width: 780px; z-index: 1001; position: absolute; display: none; top: 50%; left: 50%;
margin: -200px 0 0 -400px;">
<div style="padding: 3px 15px 3px 15px; text-align: left; vertical-align: middle;">
<div>
<br />
<br />
用户姓名:
<asp:TextBox ID="TxtTitle" runat="server" Width="349px">
</asp:TextBox>
</div>
<br />
<div>
密 码:
<asp:TextBox ID="TxtContent" runat="server" Width="349px"></asp:TextBox>
</div>
<br />
<div>
<asp:Button ID="BtnCommite" runat="server" Text="确定" OnClick="BtnCommite_Click" />
<input id="BttCancel" type="button" value="关 闭" onclick="ShowNo()" />
</div>
</div>
</div>
<div>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="3" DataKeyNames="id"
GridLines="Horizontal" OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing"
OnRowUpdating="GridView1_RowUpdating" OnRowCancelingEdit="GridView1_RowCancelingEdit"
BackColor="White" BorderColor="#E7E7FF" BorderStyle="None" BorderWidth="1px"
Width="752px" Height="150px">
<FooterStyle BackColor="#B5C7DE" ForeColor="#4A3C8C" />
<Columns>
<asp:BoundField DataField="id" HeaderText="用户ID" ReadOnly="True" />
<asp:BoundField DataField="name" HeaderText="用户姓名" />
<asp:BoundField DataField="password" HeaderText="密码" />
<asp:CommandField HeaderText="选择" ShowSelectButton="True" />
<asp:CommandField HeaderText="编辑" ShowEditButton="True"
EditText='<a href="javascript:void(0)" onclick="showFloat()">编辑</a>' />
<asp:CommandField HeaderText="删除" ShowDeleteButton="True" DeleteText="<div id="de" onclick="JavaScript:return confirm('确定删除吗?')">删除</div> " />
</Columns>
<RowStyle ForeColor="#4A3C8C" BackColor="#E7E7FF" />
<SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="#F7F7F7" />
<PagerStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" HorizontalAlign="Right" />
<HeaderStyle BackColor="#4A3C8C" Font-Bold="True" ForeColor="#F7F7F7" />
<AlternatingRowStyle BackColor="#F7F7F7" />
</asp:GridView>
</div>
</form>
</body>
</html>
解决方案 »
- 怎样删除数据表id从4到15中的所有记录啊?
- 救命啊,怎么我的页面上什么都显示不出来呢?
- 未将对象引用设置到对象的实例!帮帮小弟吧!
- 无刷新省市联动
- 关于button
- window.open()被阻止的问题
- 求教:为什么是未将对象引用设置到对象的实例
- 在 web.config的<appSettings>节中增加了多个项,如何利用WebConfigurationManager判断是否存在某个指定key的项
- 企业b/s广域网应用,应该采用何种接入互联网的方式?请有经验的同行指点
- javascript中字符串怎么去空格?trim?
- 有没有好点的 “查询域名是否可注册”的源码
- 大家帮帮忙,做一个母版页可以查找的功能
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;namespace WebApplication1
{
public partial class Default0 : System.Web.UI.Page
{
//绑定
public void bind()
{
string sqlstr = "select * from selectsql"; SqlDataAdapter myda = new SqlDataAdapter(sqlstr, DBHelper.objConnection);
DataSet myds = new DataSet();
DBHelper.objConnection.Open();
myda.Fill(myds, "selectsql");
GridView1.DataSource = myds;
GridView1.DataKeyNames = new string[] { "id" };//主键
GridView1.DataBind();
DBHelper.objConnection.Close(); } protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
bind();
}
} protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
bind();
}
//更新:弹出编辑框,提供更新
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{ /*string aa = GridView1.DataKeys[e.RowIndex].Value.ToString();
TextBox1.Text=aa;
GridView GridView1 = new GridView();
string aa = GridView1.DataKeys[e.RowIndex].Value.ToString();
string sqlstr = "update selectsql set name='"
+ ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim() + "',password='"
+ ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim() + "' where id='"
+ GridView1.DataKeys[e.RowIndex].Value.ToString() + "'";
SqlCommand sqlcom = new SqlCommand(sqlstr, DBHelper.objConnection);
DBHelper.objConnection.Open();
sqlcom.ExecuteNonQuery();
DBHelper.objConnection.Close();
GridView1.EditIndex = -1;
bind();*/
} protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
GridView1.EditIndex = -1;
bind();
}
//删除,无问题
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{ string sqlstr = "delete from selectsql where id='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'";
SqlCommand sqlcom = new SqlCommand(sqlstr, DBHelper.objConnection);
DBHelper.objConnection.Open();
sqlcom.ExecuteNonQuery();
DBHelper.objConnection.Close();
bind();
}
//层添加,问题:无法获取需要编辑的行号!!!!!!
protected void BtnCommite_Click(object sender, EventArgs e)
{ // GridView bm = (GridView)GridView1.Rows[e.NewEditIndex].DataItem;
string sqlstr = string.Format("update selectsql set name='"
+ TxtTitle.Text.ToString().Trim() + "',password='"
+ TxtContent.Text.ToString().Trim() + "' where id='"
+ GridView1.DataKeys[1].Value.ToString() + "'");//当前行的值 ,无法获取到...........
SqlCommand sqlcom = new SqlCommand(sqlstr, DBHelper.objConnection); DBHelper.objConnection.Open();
sqlcom.ExecuteNonQuery();
DBHelper.objConnection.Close();
GridView1.EditIndex = -1;
bind();
}
protected void lbToWho_DataBinding(object sender, EventArgs e)
{ } }
}
这样就可以在单击的时候获取这个ID 也没问题吧?
然后就不会获取ID是嘛?
function showFloat(id)
{
//先清空这个控件的值//再将参数赋值
document.getElementById("hdfID").InnerText=id;
//
.......
}
在后台获取这个控件的值<asp:CommandField HeaderText="编辑" ShowEditButton="True"
EditText='<a href="javascript:void(0)" onclick="showFloat(<%#Eval('ID')%)">编辑</a>' />