过滤器查询

本文介绍了一个房产网站的条件查询过滤器实现方案,通过动态生成HTML列表并设置高亮显示来模仿赶集网等平台的功能。文章详细展示了如何根据不同筛选条件生成对应的URL链接。
ContractedBlock.gifExpandedBlockStart.gifCode
using System;

namespace web
{
    
public class houselist
    {
        
public void Page_Load(Object Sender,EventAges e)
        {

            
if(!IsPostBack)
            {
                
int qyId = WCommon.Querystrzero("qyid");
                
int xqyId = WCommon.Querystrzero("xqyid");
                
int pay = WCommon.Querystrzero("pay");
                
int area = WCommon.Querystrzero("area");
                
int hyid = WCommon.Querystrzero("hyid");
                
int type = WCommon.Querystrzero("type");
                
int zj = WCommon.Querystrzero("zj");
                CreateList(qyId,xqyId,pay,area,hyid,type,zj);
            }
        }

        
//生成区域列表
        public void qylist()
        {
            DataTable dt 
= bll.quyulist();
            StringBuilder strBuilder 
= new StringBuilder();
            
foreach(DataRow item in dt.rows)
            {
                strBuilder.Append(
"<li><b><font style="red">全部</font></b></li>");
                strBuilder.Append(
"<li><a href="houselist?qyid="+item["qyid"].ToString()+"&xqyid=0&pay=0&area=0&hyid=0&type=0&zj=0">
                "+item["qyidname"].ToString()+"</a><li>");
            }
        }
        
//生成区域列表
        public void qylist()
        {
            DataTable dt 
= bll.quyulist();
            StringBuilder strBuilder 
= new StringBuilder();
            
foreach(DataRow item in dt.rows)
            {
                strBuilder.Append(
"<li><b><font style="red">全部</font></b></li>");
                strBuilder.Append(
"<li><a href="houselist?qyid="+item["qyid"].ToString()+"&xqyid=0&pay=0&area=0&hyid=0&type=0&zj=0">
                "+item["qyidname"].ToString()+"</a><li>");
            }
        }
        
//生成街道列表
        public void xqylist(int qylist)
        {
            DataTable dt 
= bll.xquyulist();
            StringBuilder strBuilder 
= new StringBuilder();
            
foreach(DataRow item in dt.rows)
            {
                strBuilder.Append(
"<li><b><font style="red">全部</font></b></li>");
                strBuilder.Append(
"<li><a href="houselist?qyid="+qylist+"&xqyid="+item["xqyid"].ToString()+"&pay=0&area=0&hyid=0&type=0&zj=0">
                "+item["qyidname"].ToString()+"</a><li>");
            }
        }
        
//生成街道列表
        public void xqylist()
        {
            DataTable dt 
= bll.xquyulist();
            StringBuilder strBuilder 
= new StringBuilder();
            
foreach(DataRow item in dt.rows)
            {
                strBuilder.Append(
"<li><b><font style="red">全部</font></b></li>");
                strBuilder.Append(
"<li><a href="houselist?qyid=0&xqyid="+item["xqyid"].ToString()+"&pay=0&area=0&hyid=0&type=0&zj=0">
                "+item["qyidname"].ToString()+"</a><li>");
            }
        }
        
//生成支付方式
        public string paylist()
        {
            DataTable dt 
= bll.paylist();
            StringBuilder strBuilder 
= new StringBuilder();
            
foreach(DataRow iem in dt.rows)
            {
                strBuilder.Append(
"<li><b><font style="red">全部</font></b></li>");
                strBuilder.Append(
"<li><a href="houselist?qyid=0&xqyid=0&pay="+item["xqyid"].ToString()+"&area=0&hyid=0&type=0&zj=0">
                "+item["qyidname"].ToString()+"</a><li>")
            }
        }
        
//生成支付方式
        public string paylist(int qyId,int xqyId)
        {
            DataTable dt 
= bll.paylist();
            StringBuilder strBuilder 
= new StringBuilder();
            
foreach(DataRow iem in dt.rows)
            {
                strBuilder.Append(
"<li><b><font style="red">全部</font></b></li>");
                strBuilder.Append(
"<li><a href="houselist?qyid="+qyId+"&xqyid="+xqyId+"&pay="+item["xqyid"].ToString()+"&area=0&hyid=0&type=0&zj=0">
                "+item["qyidname"].ToString()+"</a><li>")
            }
        }
        
//生成面积方式
        public string arealist(int qyId,int xqyId,int pay)
        {
            DataTable dt 
= bll.arealist();
            StringBuilder strBuilder 
= new StringBuilder();
            
foreach(DataRow iem in dt.rows)
            {
                strBuilder.Append(
"<li><b><font style="red">全部</font></b></li>");
                strBuilder.Append(
"<li><a href="houselist?qyid="+qyId+"&xqyid="+xqyId+"&pay="+pay+"&area="+item["xqyid"].ToString()+"&hyid=0&type=0&zj=0">
                "+item["qyidname"].ToString()+"</a><li>")
            }
        }
        
//行业生成方式
        public string hylist()
        {
            DataTable dt 
= bll.arealist();
            StringBuilder strBuilder 
= new StringBuilder();
            
foreach(DataRow iem in dt.rows)
            {
                strBuilder.Append(
"<li><b><font style="red">全部</font></b></li>");
                strBuilder.Append(
"<li><a href="houselist?qyid=0&xqyid=0&pay=0&area=0&hyid="+item["xqyid"].ToString()+"&type=0&zj=0">
                "+item["qyidname"].ToString()+"</a><li>")
            }
        }
        
public string hylist(int qyId,int xqyId,int pay,int area)
        {
            DataTable dt 
= bll.arealist();
            StringBuilder strBuilder 
= new StringBuilder();
            
foreach(DataRow iem in dt.rows)
            {
                strBuilder.Append(
"<li><b><font style="red">全部</font></b></li>");
                strBuilder.Append(
"<li><a href="houselist?qyid="+qyId+"&xqyid="+xqyId+"&pay="+pay+"&area="+area+"&hyid="+item["xqyid"].ToString()+"&type=0&zj=0">
                "+item["qyidname"].ToString()+"</a><li>")
            }
        }
        
//类型生成方式
        public string typelist()
        {
            DataTable dt 
= bll.arealist();
            StringBuilder strBuilder 
= new StringBuilder();
            
foreach(DataRow iem in dt.rows)
            {
                strBuilder.Append(
"<li><b><font style="red">全部</font></b></li>");
                strBuilder.Append(
"<li><a href="houselist?qyid=0&xqyid=0&pay=0&area=0&hyid=0&type="+item["xqyid"].ToString()+"&zj=0">
                "+item["qyidname"].ToString()+"</a><li>")
            }
        }
        
public string typelist(int qyId,int xqyId,int pay,int area,int hy)
        {
            DataTable dt 
= bll.arealist();
            StringBuilder strBuilder 
= new StringBuilder();
            
foreach(DataRow iem in dt.rows)
            {
                strBuilder.Append(
"<li><b><font style="red">全部</font></b></li>");
                strBuilder.Append(
"<li><a href="houselist?qyid="+qyId+"&xqyid="+xqyId+"&pay="+pay+"&area="+area+"&hyid=0&type="+item["xqyid"].ToString()+"&zj=0">
                "+item["qyidname"].ToString()+"</a><li>")
            }
        }
        
//中介生成方式
        public string zjlist()
        {
            
return "<li><b><font style="red">全部</font></b></li>"
        }
        
public string zjlist(int qyId,int xqyId,int pay,int area,int hy,int type)
        {
            StringBuilder strBuilder 
= new StringBuilder();
            strBuilder.Append(
"<li><b><font style="red">全部</font></b></li>");
            strBuilder.Append(
"<li><a href="houselist?qyid="+qyId+"&xqyid="+xqyId+"&pay="+pay+"&area="+area+"&hyid="+hy+"&type="+type+"&zj="+item["qyidname"].ToString()+">
                
"</a><li>");
            
return strBuilder.ToString();
        }

        
public string CreateList(int qyId,int xqyId,int pay,int area,int hyid,int type,int zj)
        {
            
if(qyId == 0 && xqyId == 0 && pay == 0 && area == 0 && hyid == 0 && type == 0 && zj == 0)
            {
                DivQy.InnerHtml 
= qylist();
                DivxQy.InnerHtml 
= xqylist();
                Divpay.InnerHtml 
= paylist();
                Divarea.InnerHtml 
= arealist();
                Divhyid.InnerHtml 
= hylist();
                Divtype.InnerHtml 
= typelist();
                Divzj.InnerHtml 
= zjlist();
            }
            
else
            {
                DivQy.InnerHtml 
= qylist();
                DivxQy.InnerHtml 
= xqylist(qyId);
                Divpay.InnerHtml 
= paylist(qyId,xqyId);
                Divarea.InnerHtml 
= arealist(qyId,xqyId,pay);
                Divhyid.InnerHtml 
= hylist(qyId,xqyId,pay,area);
                divtype.InnerHtml 
= typelist(qyId,xqyId,pay,area,hy);
                Divzj.InnerHtml 
= zjlist(qyId,xqyId,pay,area,hy,type);
            }
        }
    }
}

 

想模仿赶集、易居网,做一个过滤器条件查询,选择的条件高亮显示。

url 不知道如何处理?

转载于:https://www.cnblogs.com/u_xiaomo/archive/2009/11/01/1593800.html

本课题设计了一种利用Matlab平台开发的植物叶片健康状态识别方案,重点融合了色彩与纹理双重特征以实现对叶片病害的自动化判别。该系统构建了直观的图形操作界面,便于用户提交叶片影像并快速获得分析结论。Matlab作为具备高效数值计算与数据处理能力的工具,在图像分析与模式分类领域应用广泛,本项目正是借助其功能解决农业病害监测的实际问题。 在色彩特征分析方面,叶片影像的颜色分布常与其生理状态密切相关。通常,健康的叶片呈现绿色,而出现黄化、褐变等异常色彩往往指示病害或虫害的发生。Matlab提供了一系列图像处理函数,例如可通过色彩空间转换与直方图统计来量化颜色属性。通过计算各颜色通道的统计参数(如均值、标准差及主成分等),能够提取具有判别力的色彩特征,从而为不同病害类别的区分提供依据。 纹理特征则用于描述叶片表面的微观结构与形态变化,如病斑、皱缩或裂纹等。Matlab中的灰度共生矩阵计算函数可用于提取对比度、均匀性、相关性等纹理指标。此外,局部二值模式与Gabor滤波等方法也能从多尺度刻画纹理细节,进一步增强病害识别的鲁棒性。 系统的人机交互界面基于Matlab的图形用户界面开发环境实现。用户可通过该界面上传待检图像,系统将自动执行图像预处理、特征抽取与分类判断。采用的分类模型包括支持向量机、决策树等机器学习方法,通过对已标注样本的训练,模型能够依据新图像的特征向量预测其所属的病害类别。 此类课题设计有助于深化对Matlab编程、图像处理技术与模式识别原理的理解。通过完整实现从特征提取到分类决策的流程,学生能够将理论知识与实际应用相结合,提升解决复杂工程问题的能力。总体而言,该叶片病害检测系统涵盖了图像分析、特征融合、分类算法及界面开发等多个技术环节,为学习与掌握基于Matlab的智能检测技术提供了综合性实践案例。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
使用 `QSqlTableModel` 过滤器查询第一行数据,可按如下步骤操作: 1. 创建 `QSqlTableModel` 实例并设置要查询的表。 2. 设置过滤器过滤器格式类似于 `"字段名=字段值"`。 3. 执行查询操作。 4. 若查询成功且有数据,获取第一行数据。 以下是示例代码: ```cpp #include <QCoreApplication> #include <QSqlDatabase> #include <QSqlTableModel> #include <QSqlQuery> #include <QSqlError> #include <QDebug> int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); // 连接数据库 QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); db.setDatabaseName("your_database.db"); if (!db.open()) { qDebug() << "Error: Could not open database." << db.lastError().text(); return 1; } // 创建 QSqlTableModel 对象 QSqlTableModel model; model.setTable("your_table_name"); // 设置过滤器 model.setFilter("column_name = 'value'"); // 选择数据 if (model.select()) { // 检查是否有数据 if (model.rowCount() > 0) { // 获取第一行数据 for (int j = 0; j < model.columnCount(); ++j) { qDebug() << model.data(model.index(0, j)).toString(); } } else { qDebug() << "No data found with the given filter."; } } else { qDebug() << "Error: Query execution failed." << model.lastError().text(); } // 关闭数据库连接 db.close(); return a.exec(); } ``` 在上述代码中,首先连接到数据库,然后创建 `QSqlTableModel` 对象并设置要查询的表名。接着使用 `setFilter` 方法设置过滤器,之后调用 `select` 方法执行查询操作。如果查询成功且有数据,则通过 `model.index(0, j)` 获取第一行第 `j` 列的数据,并输出 [^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值