国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

asp.net搜索匹配關鍵字為紅色顯示的代碼

2024-07-10 13:04:51
字體:
來源:轉載
供稿:網友
首先創建類庫 model (業務實體層),創建類: newdina.cs 用于獲取數據庫相應字段名,

demo如下:

[ - ]
code:
    public class dinaset
    {
        private arraylist dinarray = new arraylist();
        public arraylist dinarray
        {
            get
            {
                return dinarray;
            }
        }
    }

類創建好之后就是界面設計了,

demo如下:

[copy to clipboard] [ - ]
code:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>無標題頁</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <asp:textbox id="txt" runat="server"></asp:textbox>
    <asp:button id="btnsearch" runat="server" text="搜 索" /><br />
    <asp:datalist id="dldata" runat="server" height="158px" width="100%">
        <headertemplate>
            <table border="0" cellpadding="0" cellspacing="0" width="100%" >
                <tr>
                    <td>標題</td>
                    <td>內容</td>
                    <td>時間</td>
                </tr>
        </headertemplate>
        <itemtemplate>
                <tr>
                    <td colspan="3"></td>
                </tr>
                <tr>
                    <td ><%...# eval("news_title")%></td>
                    <td><%...# eval("news_content")%></td>
                    <td><%...# eval("news_time")%></td>
                </tr>               
        </itemtemplate>
        <footertemplate>
            </table>
        </footertemplate>
    </asp:datalist>
    </div>
    </form>
</body>
</html>

后臺代碼如下:

[copy to clipboard] [ - ]
code:
public string keyword_sousuo(string table_field, string keyword)
    {
        string str01="", str02="", keyword_words;
        string[] keywords, table_fields;
        table_fields = table_field.split(',');
        keywords = keyword.split(',');
        if (table_field != "")
        {
            str01 = "(" + table_fields[0].tostring() + " like '%" + keyword + "%'" + ")";
            for (int i = 0; i < table_fields.length; i++)
            {
                str01 = str01 + " or " + table_fields[i].tostring() + " like '%" + keyword + "%'";
            }
            //str01 = str01 + ")";
        }
        else
        {
            response.write("<script>alert('參數錯誤(不能為空)!')</script>");
        }
        keyword = keyword.replace(" ", " ");
        keywords = keyword.split(' ');
        if (keywords.length > 0)
        {
            for (int i = 0; i < keywords.length; i++)
            {
                str02 = str02 + " or " + table_fields[0].tostring() + " like '%" + keywords[i].tostring() + "%'";
                for (int j = 1; j < table_fields.length; j++)
                {
                    str02 = str02 + " or " + table_fields[j] + " like '%" + keywords[i].tostring() + "%'";
                }
                //str02 = str02 + ")";
            }
            //str02 = "(" + str02.replace(")(", ")and(") + ")";
            keyword_words = "(" + str01 +" "+ str02 + ")";
        }
        else
        {
            keyword_words = str01;
        }
        return keyword_words;
    }
    public string keyword_tag(string str,string keyword)
    {
        string str01, str02;
        string[] keywords;
        string keyword_tag = "";
        keyword = keyword.replace(" ", " ");
        str01 = str.replace(keyword,"<font color="#ff0000">"+keyword+"</font>");
        keywords=keyword.split(' ');
        if (keywords.length > 0)
        {
            str02 = str;
            for (int i = 0; i < keywords.length; i++)
            {
                str02 = str02.replace(keywords[i], "<font color="#ff0000">" + keywords[i] + "</font>");
            }
            keyword_tag = str02;
        }
        else
        {
            keyword_tag = str01;
        }
        return keyword_tag;
    }
    protected void btnsearch_click(object sender, eventargs e)
    {
        string keyword = txt.text;
        string sql_where = keyword_sousuo("news_title,news_content,news_time",keyword);
        string strconn = "server=;user id=sa;password=123456;database=r;";
        sqlconnection conn = new sqlconnection(strconn);
        conn.open();
        string strsql = "select news_title,news_content,news_time from cmgr_newsdiary where " + sql_where + "order by news_id";
        sqldataadapter sda = new sqldataadapter(strsql,conn);
        dataset ds = new dataset();
        sda.fill(ds);
        datatable dt = ds.tables[0];
        modeldata.dinaset nds = new modeldata.dinaset();-_!!
        foreach(datarow dr in dt.rows)
        {
            modeldata.newdina nda = new modeldata.newdina();
            nda.news_title =keyword_tag( dr["news_title"].tostring(),txt.text);
            nda.news_content =keyword_tag( dr["news_content"].tostring(),txt.text);
            nda.news_time =keyword_tag(dr["news_time"].tostring(),txt.text);
            nds.dinarray.add(nda);
        }
        dldata.datasource = nds.dinarray;
        dldata.databind();
        conn.close();
    }

其中keyword_sousuo(string table_field, string keyword)方法的作用是返回條件查詢語句的條件字符.

keyword_tag(string str,string keyword)方法的作用是將返回的結果數據中響應關鍵字進行替換,令查詢的關鍵字顯紅色
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 连平县| 南溪县| 岳阳县| 瓦房店市| 汨罗市| 刚察县| 广饶县| 四会市| 澎湖县| 文安县| 昆明市| 普陀区| 卢龙县| 垦利县| 安多县| 杭锦旗| 岑巩县| 上饶市| 玉林市| 郸城县| 志丹县| 盱眙县| 九龙坡区| 寿阳县| 嘉荫县| 莱西市| 东乌珠穆沁旗| 逊克县| 晋宁县| 益阳市| 兴隆县| 清原| 灌阳县| 桐城市| 同德县| 长宁区| 松原市| 五河县| 邹城市| 合江县| 临清市|