js+ asp.Net ajax开发163邮箱效果(列表底色、多选拖动等)--checkBox多选
2007-07-29 15:18
651 查看
163邮件一个比较爽的功能就是
可以通过多选邮件,拖动到左侧的文件夹列表,实现邮件归类的功能
关于我对拖动分配的实现将在后文写出
这里说说在CheckBox的选择中做得尝试和实现的效果、方法
1。点击表格Title实现全选每行
这个早有人做了,我这里借鉴一下 一块贴出来方便大家看
js事件:
function clkAll(myTable,ck)
<asp:TemplateField>
<HeaderTemplate>
<input id="Checkbox2" type="checkbox" onclick="clkAll('grvProjList',this)" runat="server" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chbox" runat="server" />
</ItemTemplate>
2。点击GridView每行,实现选中当前行,按住shift实现多选
在JS里,事件有个Bubble过程,大致就是元素的事件(click等)
会先触发当前元素的事件,然后触发上级元素事件
<body onclick="alert('1')">
<input onclick="alert('2')">
</body>
点击文本框将依次提示 2 ,1
因此,点击GridView每行,实现选中当前行,只要考虑对TR元素进行onclick事件处理即可
完整的js代码如下:
function clk(obj,event)
protected void grvProjList_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if ((e.Row.RowIndex % 2) == 0)
{
e.Row.Attributes.Add("originalcolor", System.Drawing.ColorTranslator.ToHtml(grvProjList.RowStyle.BackColor));
e.Row.Attributes.Add("onmouseout", "mou(this,'" + System.Drawing.ColorTranslator.ToHtml(grvProjList.RowStyle.BackColor) + "')");
}
else
{
e.Row.Attributes.Add("originalcolor", System.Drawing.ColorTranslator.ToHtml(grvProjList.AlternatingRowStyle.BackColor));
e.Row.Attributes.Add("onmouseout", "mou(this,'" + System.Drawing.ColorTranslator.ToHtml(grvProjList.AlternatingRowStyle.BackColor) + "')");
}
e.Row.Attributes.Add("onmouseover", "mov(this)");
e.Row.Attributes.Add("onclick", "clk(this,event)");
e.Row.Attributes["style"] = "Cursor:hand";
}
}
对于按住Ctrl实现多选,没有必要实现,因为不同于windows的单击单选,
gridView本来就是按住ctrl的效果了(单击增加、删除选择)
可以通过多选邮件,拖动到左侧的文件夹列表,实现邮件归类的功能
关于我对拖动分配的实现将在后文写出
这里说说在CheckBox的选择中做得尝试和实现的效果、方法
1。点击表格Title实现全选每行
这个早有人做了,我这里借鉴一下 一块贴出来方便大家看
js事件:
function clkAll(myTable,ck)
<asp:TemplateField>
<HeaderTemplate>
<input id="Checkbox2" type="checkbox" onclick="clkAll('grvProjList',this)" runat="server" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chbox" runat="server" />
</ItemTemplate>
2。点击GridView每行,实现选中当前行,按住shift实现多选
在JS里,事件有个Bubble过程,大致就是元素的事件(click等)
会先触发当前元素的事件,然后触发上级元素事件
<body onclick="alert('1')">
<input onclick="alert('2')">
</body>
点击文本框将依次提示 2 ,1
因此,点击GridView每行,实现选中当前行,只要考虑对TR元素进行onclick事件处理即可
完整的js代码如下:
function clk(obj,event)
protected void grvProjList_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if ((e.Row.RowIndex % 2) == 0)
{
e.Row.Attributes.Add("originalcolor", System.Drawing.ColorTranslator.ToHtml(grvProjList.RowStyle.BackColor));
e.Row.Attributes.Add("onmouseout", "mou(this,'" + System.Drawing.ColorTranslator.ToHtml(grvProjList.RowStyle.BackColor) + "')");
}
else
{
e.Row.Attributes.Add("originalcolor", System.Drawing.ColorTranslator.ToHtml(grvProjList.AlternatingRowStyle.BackColor));
e.Row.Attributes.Add("onmouseout", "mou(this,'" + System.Drawing.ColorTranslator.ToHtml(grvProjList.AlternatingRowStyle.BackColor) + "')");
}
e.Row.Attributes.Add("onmouseover", "mov(this)");
e.Row.Attributes.Add("onclick", "clk(this,event)");
e.Row.Attributes["style"] = "Cursor:hand";
}
}
对于按住Ctrl实现多选,没有必要实现,因为不同于windows的单击单选,
gridView本来就是按住ctrl的效果了(单击增加、删除选择)
相关文章推荐
- js+ asp.Net ajax开发163邮箱效果(列表底色、多选拖动等)--checkBox多选
- js+ asp.Net ajax开发163邮箱效果(列表底色、多选拖动等)--checkBox多选
- js+ asp.Net ajax开发163邮箱效果(列表底色、多选拖动等)--列表底色随鼠标移动变化
- js+ asp.Net ajax开发163邮箱效果(列表底色、多选拖动等)--列表底色随鼠标移动变化
- C#中??和?分别是什么意思? 在ASP.NET开发中一些单词的标准缩写 C#SESSION丢失问题的解决办法 在C#中INTERFACE与ABSTRACT CLASS的区别 SQL命令语句小技巧 JQUERY判断CHECKBOX是否选中三种方法 JS中!=、==、!==、===的用法和区别 在对象比较中,对象相等和对象一致分别指的是什么?
- ASP.Net AJAX+userControl+js实现仿igoogle效果网站
- ASP.Net AJAX+userControl+js实现仿igoogle效果网站
- asp.net+js实现的ajax sugguest搜索提示效果
- asp.net+js实现的ajax sugguest搜索提示效果
- ASP.Net AJAX+userControl+js实现仿igoogle效果网站
- ASP.Net AJAX+userControl+js实现仿igoogle效果网站
- 清新空气---我的.net(C#)生涯知识总结 跨CSS,JS,JAVA,AJAX,WPF,WCF,LINQ,ASP.NET,Winform,Sqlserver,Mysql,EF,OOP,开发工具等
- ASP.Net AJAX+userControl+js实现仿igoogle效果网站
- 一步一步使用Ext JS MVC与Asp.Net MVC 3开发简单的CMS后台管理系统之用户管理(3)
- 一步一步使用Ext JS MVC与Asp.Net MVC 3开发简单的CMS后台管理系统之数据篇
- asp.net ajax 使用AutoCompleteExtender开发自动完成功能(转载)
- 一步一步使用Ext JS MVC与Asp.Net MVC 3开发简单的CMS后台管理系统之数据篇
- 在Visual Studio.NET 2005开发基于ASP.NET AJAX的应用
- 一步一步使用Ext JS MVC与Asp.Net MVC 3开发简单的CMS后台管理系统之用户管理(4)
- EdiTable-一个基于ASP.NET+AJAX开发的数据库表编辑组件