• JQuery自定义搜索控件


    小练习 根据选项搜索

    效果:

     1 <style type="text/css">
     2 body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, input, button, textarea, p, th, td{ margin: 0;padding: 0;border:none;}
     3 .search .border {margin-right:0px;
     4     width:288px;
     5     height:32px;
     6     margin-right:10px;
     7     border:1px solid #ddd;
     8     background:#fff;}
     9 
    10  .search .lanmu {
    11     position:relative;
    12     float:left;
    13     width:60px;
    14     height:32px;
    15     border-right:1px solid #ccc;
    16     font-size:12px;
    17 }
    18  .search .lanmu i {
    19     position:absolute;
    20     left:9px;
    21     top:14px;
    22     width:7px;
    23     height:4px;
    24     background:url(images/forumicon2.gif) no-repeat 0 -223px;
    25 }
    26 .search .lanmu .down {
    27     display:none;
    28     cursor:pointer;
    29     position:absolute;
    30     width:60px;
    31     line-height:26px;
    32     left:-1px;
    33     top:32px;
    34     text-align:center;
    35     border:1px solid #ccc;
    36     background:#fff;
    37 }
    38  .search .lanmu .down li:hover {
    39     background:#5cb82b;
    40     color:#fff;
    41 }
    42  .search .lanmu span {
    43     cursor:pointer;
    44     padding-left:25px;
    45     line-height:32px;
    46 }
    47  .search .input {
    48     float:left;
    49     width:185px;
    50     padding:0 5px;
    51     height:32px;
    52     line-height:32px;
    53 }
    54  .search .sub {
    55     float:left;
    56     width:32px;
    57     height:32px;
    58     background:url(images/forumicon2.gif) no-repeat 0 -41px;
    59 }
    60  .search .btn-down,.btn-down{
    61     float:left;
    62     position:relative;
    63     width:100px;
    64     height:32px;
    65     line-height:32px;
    66     text-align:center;
    67     color:#fff;
    68     background:#5bb72b;
    69     border:1px solid #5ab42a;
    70     font-size:14px;
    71 }
    72 </style>
    CSS样式
     1 <script type="text/javascript">
     2 $(function(){
     3     if($("#qty").val()=="帖子")
     4     {
     5         $(".lanmu span").html("<i></i>"+$("#litopic").text());
     6         $(".lanmu span").next().hide().removeClass('downshow');
     7     }
     8     else  if($("#qty").val()=="新闻")
     9     {
    10         $(".lanmu span").html("<i></i>"+$("#litopic").text());
    11         $(".lanmu span").next().hide().removeClass('downshow');
    12     }
    13     $(".lanmu span").click(function(event){
    14             var _that = $(this);
    15             _that.next().toggle().toggleClass('downshow');
    16             $("#litopic").click(function(){
    17                 $("#qty").val("帖子");
    18                 _that.html("<i></i>"+$(this).text());
    19                 _that.next().hide().removeClass('downshow');
    20             });
    21             $("#linews").click(function(){
    22                 $("#qty").val("新闻");
    23                 _that.html("<i></i>"+$(this).text());
    24                 _that.next().hide().removeClass('downshow');
    25             });
    26             event.stopPropagation();
    27         })
    28         //空白点击关闭下拉
    29         $(document).click(function(){
    30             var $down = $('.lanmu .down');
    31             if($down.hasClass('downshow')){
    32                  $down.hide().removeClass('downshow');
    33             }
    34         })
    35 });
    36 function Search()
    37 {
    38     var tb= document.getElementById("txtname").value;
    39     if(tb=="请输入搜索的内容"||tb.replace(/(^s*)|(s*$)/g, "")=="")
    40     {
    41        document.getElementById("txtname").value="";
    42        alert("请输入搜索的内容!");
    43        return;
    44     }
    45     var hqty=document.getElementById("qty").value
    46     if(hqty=="帖子")
    47     {
    48        window.location.href="A.aspx?t=2&title="+escape(tb);
    49     }
    50     else if(hqty=="新闻")
    51     {
    52      window.location.href="B.aspx?t=2&name="+escape(tb);
    53     }
    54     return;
    55 }
    56 
    57 function show_select(input,btn,option,value){
    58     inputobj=document.getElementById(input);
    59     btnobj=document.getElementById(btn);
    60     optionobj=document.getElementById(option);
    61     valueobj=document.getElementById(value);
    62     optionobj.style.display=optionobj.style.display==""?"none":"";
    63     optionobj.onblur=function () {
    64         optionobj.style.display="none";
    65     }
    66 
    67     for (var i=0;i<optionobj.childNodes.length;i++){
    68         optionobj.focus();
    69         optionobj.childNodes[i].onmouseover=function (){
    70             this.className="itemsover";
    71         }
    72         optionobj.childNodes[i].onmouseout=function (){
    73             this.className="itemsout";
    74         }
    75         optionobj.childNodes[i].onclick=function () {
    76         //alert(this.innerHTML)
    77             inputobj.innerHTML=this.innerHTML;
    78             valueobj.value=this.innerHTML;
    79             optionobj.blur();
    80             optionobj.style.display="none";
    81             if (input=="pro_color"){
    82               loadpic(this.id,"");
    83             }
    84         }
    85     }
    86 }
    87 </script>
    Jquery
     1 <div class="search">
     2 <div class="border">
     3     <div class="lanmu">
     4         <span ><i></i>帖子</span>
     5         <ul class="down">
     6             <li id="litopic">帖子</li>
     7             <li id="linews">新闻</li>
     8         </ul>
     9     </div>
    10     <input id="txtname" type="text" class="input" onkeydown="(function(e){if(!e) e=window.event;switch (e.keyCode|e.which|e.charCode){case 13:Serach();break;}})(event);"/>
    11     <input id="Button1" type="button" class="sub" value="" title="搜索" onclick="Search" style="cursor: pointer"/>
    12     <input name="qty" type="hidden" id="qty" value="帖子"/>
    13 </div>
    14 </div>
    html
  • 相关阅读:
    迈向架构设计师之路系列—简单对象访问模式(一)
    C#温故而知新学习系列之.NET运行机制—.NET中托管代码是指什么?(三)
    C#温故而知新学习系列之面向对象编程—静态方法(九)
    Android深入浅出系列之Android开发环境搭建—JDK(一)
    C#温故而知新学习系列之面向对象编程—自动属性(十一)
    C#温故而知新学习系列之面向对象编程—方法的重载(八)
    C#温故而知新学习系列之面向对象编程—分布类是什么?(十四)
    C#温故而知新学习系列之面向对象编程—属性(十二)
    C#温故而知新学习系列之面向对象编程—构造函数(七)
    C#温故而知新学习系列之.NET运行机制—.NET Framework概述及其组成(一)
  • 原文地址:https://www.cnblogs.com/netqin/p/5641190.html
Copyright © 2020-2023  润新知