大侠们,救命啊。Repeater选中行的颜色显示 本帖最后由 hhh871030 于 2009-12-30 13:56:22 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你非点用Repeater 吗?用GridView有方法解决 第1种:你参考下我的代码<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME="Generator" CONTENT="EditPlus"> <META NAME="Author" CONTENT=""> <META NAME="Keywords" CONTENT=""> <META NAME="Description" CONTENT=""> </HEAD> <BODY> <div id="jpmenu"> <ul style=""> <li>序号 </li> <li>出发地 </li> <li>目的地 </li> <li>运输类型 </li> <li><a href="###" onclick="if (this.parentNode.parentNode.style.background!='red')this.parentNode.parentNode.style.background='red'; else this.parentNode.parentNode.style.background='white'">选择</a> </li> </ul> <ul style=""> <li>序号 </li> <li>出发地 </li> <li>目的地 </li> <li>运输类型 </li> <li><a href="###" onclick="if (this.parentNode.parentNode.style.background!='red')this.parentNode.parentNode.style.background='red'; else this.parentNode.parentNode.style.background='white'">选择</a> </li> </ul> </div> </BODY></HTML> 1.在Repeater中加一表格或div,改变表格或div的颜色,如下:<asp:Repeater ID="Repeater1" runat="server" OnItemCommand="Repeater1_ItemCommand"> <ItemTemplate> <table border="0" cellspacing="0" cellpadding="0" width="100%" runat ="server" id="table1"><tr><td > ....... ....... </td></tr></table> </ItemTemplate></asp:Repeater>2.在Repeater的ItemDataBound事件中有如下代码,即click调用js:protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e){ HtmlTable myTable = (HtmlTable)e.Item.FindControl("table1"); if (myTable != null) myTable.Attributes.Add("onclick", "changeColor('" + myTable.ClientID.ToString() + "')");}如果没引用,请添加引用:using System.Web.UI.HtmlControls;3.js代码:<script type="text/javascript"> function changeColor(obj) { var myTable = document.getElementsByTagName("table"); for (i = 0; i < myTable.length; i++) { if (myTable[i].id == obj) document.getElementById(myTable[i].id).style.backgroundColor = "#ff0000"; else document.getElementById(myTable[i].id).style.backgroundColor = "#ffffff"; } }</script>ok!! <script language=javascript> function Click(obj){ if(obj.checked==true) { obj.parentElement.parentElement.bgColor= "red"; } else { obj.parentElement.parentElement.bgColor= "#ffffff"; } } </script>试试这个吧! onmouseover="c=this.style.backgroundColor;this.style.backgroundColor=c"onmouseout="this.style.backgroundColor=c;";这样不知道行不行了! 代码收藏管理工具 IIS 安装不了 在线等待~ 只能在服务器端上传文件,不能在客户段上传文件是怎么回事 请教xpath如何写 求解一个ASPX网站调用DLL的编写问题 探讨一下上传控件的上载文件大小限制的问题 asp.net 页面 有没有办法弹出窗口,然后返回值给父页面后,继续执行父页面的程序? ASP.net中有否似FTP的组件?如无,如何在WEB中实现类似FTP的功能? 求大神打救啊,win10 系统vs2012无法连接到数据库 表单自动补全 repeater 怎么实现高亮
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT=""> </HEAD> <BODY>
<div id="jpmenu">
<ul style="">
<li>序号 </li> <li>出发地 </li> <li>目的地 </li> <li>运输类型 </li> <li><a href="###" onclick="if (this.parentNode.parentNode.style.background!='red')this.parentNode.parentNode.style.background='red'; else this.parentNode.parentNode.style.background='white'">选择</a> </li> </ul>
<ul style="">
<li>序号 </li> <li>出发地 </li> <li>目的地 </li> <li>运输类型 </li> <li><a href="###" onclick="if (this.parentNode.parentNode.style.background!='red')this.parentNode.parentNode.style.background='red'; else this.parentNode.parentNode.style.background='white'">选择</a> </li> </ul>
</div>
</BODY>
</HTML>
<asp:Repeater ID="Repeater1" runat="server" OnItemCommand="Repeater1_ItemCommand">
<ItemTemplate>
<table border="0" cellspacing="0" cellpadding="0" width="100%" runat ="server" id="table1"><tr><td >
.......
.......
</td></tr></table>
</ItemTemplate>
</asp:Repeater>2.在Repeater的ItemDataBound事件中有如下代码,即click调用js:
protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
HtmlTable myTable = (HtmlTable)e.Item.FindControl("table1");
if (myTable != null)
myTable.Attributes.Add("onclick", "changeColor('" + myTable.ClientID.ToString() + "')");
}
如果没引用,请添加引用:
using System.Web.UI.HtmlControls;3.js代码:
<script type="text/javascript">
function changeColor(obj) {
var myTable = document.getElementsByTagName("table");
for (i = 0; i < myTable.length; i++) {
if (myTable[i].id == obj)
document.getElementById(myTable[i].id).style.backgroundColor = "#ff0000";
else
document.getElementById(myTable[i].id).style.backgroundColor = "#ffffff";
}
}
</script>ok!!
function Click(obj){
if(obj.checked==true)
{
obj.parentElement.parentElement.bgColor= "red";
}
else
{
obj.parentElement.parentElement.bgColor= "#ffffff";
}
}
</script>
试试这个吧!
onmouseout="this.style.backgroundColor=c;";
这样不知道行不行了!