62,050
社区成员
发帖
与我相关
我的任务
分享
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!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>
<style type="text/css">
.red{border:solid 1px #c0c0c0;background-color:#c0c0c0;font-size:12px;}
.div{width:100%;border:solid 1px #c0c0c0;padding-left:10px;padding-top:10px;float:left}
</style>
</head>
<body>
<form id="form1" runat="server">
<asp:Panel ID="panMain" runat="server">
<div class="div">
<asp:Repeater runat="server" ID="rep_1">
<ItemTemplate>
<asp:LinkButton runat="server" ID="l1" Text='<%# Eval("UserName") %>' CommandName="com1" OnCommand="com1" CommandArgument='<%# Eval("UserName") %>'></asp:LinkButton>
</ItemTemplate>
</asp:Repeater>
</div>
<div class="div">
<asp:Repeater runat="server" ID="rep_2">
<ItemTemplate>
<asp:LinkButton runat="server" ID="l1" Text='<%# Eval("UserName") %>' CommandName="com2" OnCommand="com2" CommandArgument='<%# Eval("UserName") %>'></asp:LinkButton>
</ItemTemplate>
</asp:Repeater>
</div>
<div class="div">
<asp:Repeater runat="server" ID="rep_3">
<ItemTemplate>
<asp:LinkButton runat="server" ID="l1" Text='<%# Eval("UserName") %>' CommandName="com3" OnCommand="com3" CommandArgument='<%# Eval("UserName") %>'></asp:LinkButton>
</ItemTemplate>
</asp:Repeater>
</div>
</asp:Panel>
</form>
</body>
</html>
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
System.Data.DataTable dt = GetDataTable();
rep_1.DataSource = dt;
rep_2.DataSource = dt;
rep_3.DataSource = dt;
rep_1.DataBind();
rep_2.DataBind();
rep_3.DataBind();
(rep_1.Items[0].FindControl("l1") as LinkButton).CssClass = "red";
(rep_2.Items[0].FindControl("l1") as LinkButton).CssClass = "red";
(rep_3.Items[0].FindControl("l1") as LinkButton).CssClass = "red";
Response.Write(GetParames());
//这个是设置全部默认选择的样式我只写了一个
}
}
protected void com1(object o, CommandEventArgs e)
{
for (int i = 0; i < rep_1.Items.Count; i++)
{
LinkButton l = rep_1.Items[i].FindControl("l1") as LinkButton;
l.CssClass = "";
}
(o as LinkButton).CssClass = "red";
Response.Write(GetParames());
}
protected void com2(object o, CommandEventArgs e)
{
for (int i = 0; i < rep_2.Items.Count; i++)
{
LinkButton l = rep_2.Items[i].FindControl("l1") as LinkButton;
l.CssClass = "";
}
(o as LinkButton).CssClass = "red";
Response.Write(GetParames());
}
protected void com3(object o, CommandEventArgs e)
{
for (int i = 0; i < rep_3.Items.Count; i++)
{
LinkButton l = rep_3.Items[i].FindControl("l1") as LinkButton;
l.CssClass = "";
}
(o as LinkButton).CssClass = "red";
Response.Write(GetParames());
}
private DataTable GetDataTable()
{
string connectionString = "server=.;database=dbuser;uid=sa;pwd=000000";
SqlConnection conn = new SqlConnection(connectionString);
string sqlString = "select * from info";
SqlDataAdapter caChe = new SqlDataAdapter(sqlString, conn);
DataSet ds = new DataSet();
caChe.Fill(ds);
return ds.Tables[0];
}
//获取筛选条件
private string GetParames()
{
string parms = "";
foreach (Control c in panMain.Controls)
{
if (c is Repeater)
{
Repeater p = c as Repeater;
for (int i = 0; i < p.Items.Count; i++)
{
LinkButton lb = p.Items[i].FindControl("l1") as LinkButton;
if (lb.CssClass == "red")
{
parms += (lb.FindControl("l1") as LinkButton).Text;
}
}
}
}
return parms;
}
}
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!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>
<style type="text/css">
.red{border:solid 1px #c0c0c0;background-color:#c0c0c0;font-size:12px;}
.div{width:100%;border:solid 1px #c0c0c0;padding-left:10px;padding-top:10px;float:left}
</style>
</head>
<body>
<form id="form1" runat="server">
<asp:Panel ID="panMain" runat="server">
<div class="div">
<asp:Repeater runat="server" ID="rep_1">
<ItemTemplate>
<asp:LinkButton runat="server" ID="l1" Text='<%# Eval("UserName") %>' CommandName="com1" OnCommand="com" CommandArgument='<%# Eval("UserName") %>'></asp:LinkButton>
</ItemTemplate>
</asp:Repeater>
</div>
<div class="div">
<asp:Repeater runat="server" ID="rep_2">
<ItemTemplate>
<asp:LinkButton runat="server" ID="l1" Text='<%# Eval("UserName") %>' CommandName="com2" OnCommand="com" CommandArgument='<%# Eval("UserName") %>'></asp:LinkButton>
</ItemTemplate>
</asp:Repeater>
</div>
<div class="div">
<asp:Repeater runat="server" ID="rep_3">
<ItemTemplate>
<asp:LinkButton runat="server" ID="l1" Text='<%# Eval("UserName") %>' CommandName="com3" OnCommand="com" CommandArgument='<%# Eval("UserName") %>'></asp:LinkButton>
</ItemTemplate>
</asp:Repeater>
</div>
</asp:Panel>
</form>
</body>
</html>
using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
System.Data.DataTable dt = GetDataTable();
rep_1.DataSource = dt;
rep_2.DataSource = dt;
rep_3.DataSource = dt;
rep_1.DataBind();
rep_2.DataBind();
rep_3.DataBind();
(rep_1.Items[0].FindControl("l1") as LinkButton).CssClass = "red";
(rep_2.Items[0].FindControl("l1") as LinkButton).CssClass = "red";
(rep_3.Items[0].FindControl("l1") as LinkButton).CssClass = "red";
SelectByConditions();
}
}
protected void com(object o, CommandEventArgs e)
{
string commandName = e.CommandName;
if (commandName == "com1")
{
//清楚所有LinkButton控件的CssClass属性。
for (int i = 0; i < rep_1.Items.Count; i++)
{
LinkButton l = rep_1.Items[i].FindControl("l1") as LinkButton;
l.CssClass = "";
}
//为类型为LinkButton的事件源添加CssClass属性。
(o as LinkButton).CssClass = "red";
}
else if (commandName == "com2")
{
for (int i = 0; i < rep_2.Items.Count; i++)
{
LinkButton l = rep_2.Items[i].FindControl("l1") as LinkButton;
l.CssClass = "";
}
(o as LinkButton).CssClass = "red";
}
else if (commandName == "com3")
{
for (int i = 0; i < rep_3.Items.Count; i++)
{
LinkButton l = rep_3.Items[i].FindControl("l1") as LinkButton;
l.CssClass = "";
}
(o as LinkButton).CssClass = "red";
}
//根据条件筛选
SelectByConditions();
}
private DataTable GetDataTable()
{
string connectionString = "server=.;database=dbuser;uid=sa;pwd=000000";
SqlConnection conn = new SqlConnection(connectionString);
string sqlString = "select * from info";
SqlDataAdapter caChe = new SqlDataAdapter(sqlString, conn);
DataSet ds = new DataSet();
caChe.Fill(ds);
return ds.Tables[0];
}
//获取筛选条件
private string GetParames()
{
string parms = "";
foreach (Control c in panMain.Controls)
{
if (c is Repeater)
{
Repeater p = c as Repeater;
for (int i = 0; i < p.Items.Count; i++)
{
LinkButton lb = p.Items[i].FindControl("l1") as LinkButton;
if (lb.CssClass == "red")
{
parms += (lb.FindControl("l1") as LinkButton).Text;
}
}
}
}
return parms;
}
//根据条件筛选
private void SelectByConditions()
{
Response.Write(GetParames());
}
}
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
*{
border:0;
padding:0;
margin:0;
font-family:Arial, Helvetica, sans-serif;
font-size:12px;
}
#pinpai,#jiage,#chicun,#pingtai,#xianka{
display:block;
}
#main{
width:500px;
height:500px;
}
.leibie{
font-size:14px;
font-weight:400;
}
.common{
font-size:12px;
margin-left:5px;
margin-right:5px;
}
#mainDIV a{
color:#666666;
text-decoration:none;
}
#mainDIV a:hover{
background-color:#4598d2;
}
.bgColor{
background-color:#4598d2;
}
</style>
<script type="text/javascript">
//加载事件
function jiazai()
{
var root = document.getElementById("mainDIV").getElementsByTagName("div");//找错一共有多少行。
for(var i = 0; i < root.length;i++)
{
var tagAs = root[i].getElementsByTagName("a");//每一行中由a标签构成的数组。
tagAs[0].className = 'bgColor';
}
}
//a标签的单击事件,改变背景颜色
function aClick(event)
{
var tag = event.srcElement || event.target;//找到单击被点击的元素
var father = tag.parentNode;
while(father.nodeName != "DIV")
{
father = father.parentNode;
}
var fatherID = father.id;
for(var i = 0; i < document.getElementById(fatherID).getElementsByTagName("a").length;i++)
{
document.getElementById(fatherID).getElementsByTagName("a")[i].className = "";
}
tag.className = 'bgColor';
alert(fe());
}
//遍历所有a标签,根据a标签的className不同来获取用户选中的类型
function fe()
{
var result = ""//记录返回的条件
var root = document.getElementById("mainDIV").getElementsByTagName("a");//获取id为mainDIV标签下面的所有a标签
for(var i = 0; i < root.length;i++)
{
if(root[i].className == 'bgColor')
{
result += root[i].innerHTML;
}
}
return result;
}
</script>
</head>
<body onload="jiazai()">
<div id="mainDIV">
<div id="pinpai">
<span class="leibie"><strong>品牌:</strong></span>
<span class="common"><a href="#" onclick="aClick(event)">全部</a></span>
<span class="common"><a href="#" onclick="aClick(event)">惠普</a></span>
<span class="common"><a href="#" onclick="aClick(event)">海尔</a></span>
<span class="common"><a href="#" onclick="aClick(event)">微星</a></span>
</div>
<div id="jiage">
<span class="leibie"><strong>价格:</strong></span>
<span class="common"><a href="#" onclick="aClick(event)">全部</a></span>
<span class="common"><a href="#" onclick="aClick(event)">1-2999</a></span>
<span class="common"><a href="#" onclick="aClick(event)">3000-3999</a></span>
<span class="common"><a href="#" onclick="aClick(event)">4000-4999</a></span>
<span class="common"><a href="#" onclick="aClick(event)">5000-5999</a></span>
</div>
<div id="chicun">
<span class="leibie"><strong>尺寸:</strong></span>
<span class="common"><a href="#" onclick="aClick(event)">全部</a></span>
<span class="common"><a href="#" onclick="aClick(event)">8.9英寸及以下</a></span>
<span class="common"><a href="#" onclick="aClick(event)">11英寸</a></span>
<span class="common"><a href="#" onclick="aClick(event)">12英寸</a></span>
<span class="common"><a href="#" onclick="aClick(event)">13英寸</a></span>
</div>
<div id="pingtai">
<span class="leibie"><strong>平台:</strong></span>
<span class="common"><a href="#" onclick="aClick(event)">全部</a></span>
<span class="common"><a href="#" onclick="aClick(event)">Inter平台</a></span>
<span class="common"><a href="#" onclick="aClick(event)">AMD平台</a></span>
<span class="common"><a href="#" onclick="aClick(event)">VIA平台</a></span>
</div>
<div id="xianka">
<span class="leibie"><strong>显卡:</strong></span>
<span class="common"><a href="#" onclick="aClick(event)">全部</a></span>
<span class="common"><a href="#" onclick="aClick(event)">独立显卡</a></span>
<span class="common"><a href="#" onclick="aClick(event)">集成显卡</a></span>
</div>
</div>
</body>
</html>
<!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">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<title></title>
<style type="text/css">
*{ margin:0; padding:0; font-size:13px;}
body {background:#fff;font-size:13px;font-family:宋体,Verdana;color:#666;height:100%; width:100%}
dd div a{margin-left:10px;}
a:link {color: #000;text-decoration: none;}
a:visited {color: #666;text-decoration: none;}
a:hover {text-decoration: none;color: #F00; }
a:active {text-decoration: none;}
#current{background:blue; color:red;}
</style>
</head>
<body>
<div style="width:600px; height:auto; margin:50px auto; border:1px solid #ddd">
<h1>笔记本</h1><strong> - 商品筛选</strong>
<div id="select" >
<dl >
<dt>品牌:</dt>
<dd>
<div>
<a>全部</a>
<a>联想(ThinkPad)</a>
<a>联想(Lenovo)</a>
<a>惠普(hp)</a>
<a>宏碁(acer)</a>
</div>
</dd>
<dt>价格:</dt>
<dd>
<div>
<a>全部</a>
<a>3000-3999</a>
<a>4000-4999</a>
<a>5000-5999</a>
<a>6000-6999</a>
</div>
</dd>
<dt>尺寸:</dt>
<dd>
<div>
<a>全部</a>
<a>11英寸</a>
<a>12英寸</a>
<a>14英寸</a>
<a>15英寸</a>
</div>
</dd>
</dl>
</div>
</div>
</body>
<script type="text/javascript">
window.onload=function()
{
var divSelect = document.getElementById("select");
var ddList = divSelect.getElementsByTagName("dd");
var aList=[] ;
var url = document.location.href;
var index = url.indexOf("p=");
var fileName="多条件搜索显示效果.htm?p="; // 当前相对url + "p="
var p ;
if(index>0){p=url.substr(index+2); }
p= p? p.split('-'):[0,0,0];
for(var i=0;i< ddList.length;i++)
{
aList.push( ddList[i].getElementsByTagName("a"));
aList[i][p[i]?p[i]:0].id="current";
}
for(var i=0;i< aList[0].length;i++) // 品牌 链接
{
aList[0][i].href = fileName + i +'-'+ (p[1]?p[1]:0)+'-'+ (p[2]?p[2]:0);
}
for(var i=0;i< aList[1].length;i++) // 价格 链接
{
aList[1][i].href = fileName + (p[0]?p[0]:0)+'-'+ i +'-'+ (p[2]?p[2]:0);
}
for(var i=0;i< aList[2].length;i++) // 尺寸 链接
{
aList[2][i].href = fileName +(p[0]?p[0]:0)+'-'+ (p[1]?p[1]:0)+'-'+ i ;
}
}
</script>
</html>