Rabu, 22 September 2010

Memodifikasi Flexigrid QuickSearch button agar tidak muncul di bar bawah

  1. Tambahkan beberapa parameter baru di flexigrid options. Set nilai default agar compatible dengan behavior asli flexigrid


     

    showQuickSearch: true,

    quickSearchatTop: false,

    quickSearchatBottom: true,    


     

  2. Modifikasi kode yang memuat if(p.searchitems) menjadi


     

                //add search button

                if(p.showQuickSearch)

                {

                    if(p.quickSearchatBottom)

                    {

                        if (p.searchitems)

                        {

                            $('.pDiv2',g.pDiv).prepend("<div class='pGroup'> <div class='pSearch pButton'><span></span></div> </div> <div class='btnseparator'></div>");                        

                            $('.pSearch',g.pDiv).click(function(){$(g.sDiv).slideToggle('fast',function(){$('.sDiv:visible input:first',g.gDiv).trigger('focus');});});                

                            

                            //add search box

                            g.sDiv.className = 'sDiv';

                            

                            sitems = p.searchitems;

                            

                            var sopt = "";

                            for (var s = 0; s < sitems.length; s++)

                            {

                                if (p.qtype=='' && sitems[s].isdefault==true)

                                {

                                p.qtype = sitems[s].name;

                                sel = 'selected="selected"';

                                } else sel = '';

                                sopt += "<option value='" + sitems[s].name + "' " + sel + " >" + sitems[s].display + "&nbsp;&nbsp;</option>";                        

                            }

                            

                            if (p.qtype=='') p.qtype = sitems[0].name;

                            

                            $(g.sDiv).append("<div class='sDiv2'>Quick Search <input type='text' size='30' name='q' class='qsbox' /> <select name='qtype' id='qtype'>"+sopt+"</select> <input type='button' value='Clear' /></div>");


     

                            $('input[name=q],select[name=qtype]',g.sDiv).keydown(function(e){if(e.keyCode==13) g.doSearch()});

                            $('input[value=Clear]',g.sDiv).click(function(){$('input[name=q]',g.sDiv).val(''); p.query = ''; g.doSearch(); });

                            $(g.bDiv).after(g.sDiv);                

                            

                        }

                    }

                    

                    

                    if(p.quickSearchatTop)

                    {

                        if (p.searchitems)

                        {

                            g.sDiv.className = 'sDiv';                        

                            sitems = p.searchitems;

                            

                            var sopt = "";

                            for (var s = 0; s < sitems.length; s++)

                            {

                                if (p.qtype=='' && sitems[s].isdefault==true)

                                {

                                p.qtype = sitems[s].name;

                                sel = 'selected="selected"';

                                } else sel = '';

                                sopt += "<option value='" + sitems[s].name + "' " + sel + " >" + sitems[s].display + "&nbsp;&nbsp;</option>";                        

                            }


     

                            $('.tDiv2').append("<div class='btnseparator'></div><div class='fbutton_x'><span style='padding-left: 2px;padding-right:2px;'><label></label><input type='text' size='30' name='q' class='qsbox' style='color:#999999;' value='Quick Search'/> <select name='qtype' id='qtype'>"+sopt+"</select> <input type='button' value='Clear' /></span></div>");

                            if (p.qtype=='') p.qtype = sitems[0].name;                        

                            $('input[name=q],select[name=qtype]',g.tDiv).keydown(

                                function(e){

                                    if(e.keyCode==13)

                                    {

                                        //satiri @ 22-09-2010

                                        //add timeout to support update in .qsbox

                                        setTimeout(

                                            function(){g.doSearch();},

                                            200

                                        );

                                    }

                            });

                            

                            $(".qsbox").click(function(){

                                if($(this).val()=="Quick Search"){

                                    $(this).val("");

                                    $(this).css("color","#000000");

                                }

                            });

                            

                            $(".qsbox").mouseout(function(){

                                if($(this).val()==""){

                                    $(this).val("Quick Search");

                                    $(this).css("color","#999999");

                                }

                            });

                            

                            $('input[value=Clear]',g.tDiv).click(function(){

                                    $('input[name=q]',g.tDiv).val('');

                                    

                                    $(".qsbox").val("Quick Search");

                                    $(".qsbox").css("color","#999999");

                                    

                                    p.query = '';

                                    g.doSearch();

                            });                                        

                            

                        }

                    }

                    

                }

0 komentar:

Posting Komentar

Share

Twitter Delicious Facebook Digg Stumbleupon Favorites More