Hledání "CTRL+F" políčkem na webu Vyřešeno

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

Uživatelský avatar
kuxik009
Level 2.5
Level 2.5
Příspěvky: 338
Registrován: únor 13
Pohlaví: Muž
Stav:
Offline
Kontakt:

Hledání "CTRL+F" políčkem na webu

Příspěvekod kuxik009 » 11 led 2015 11:13

Zdravím,
mám na webu následující kód:

Kód: Vybrat vše

$pole = array(položky);
<table width="100%"><?
foreach ($pole as $klic => $hodnota)
 {
  $klic_del = $klic/2;
  $klic_zao = floor($klic_del);
  if ($klic_del == $klic_zao)
   {?>
    <tr><td width="50%"><input type="checkbox" id="<?php echo $klic ?>"><label for='<? echo $klic ?>'><? echo $hodnota ?></label></td><?
   }
    else
     {?>
      <td width="50%"><input type="checkbox" id="<?php echo $klic ?>"><label for='<? echo $klic ?>'><? echo $hodnota ?></label></td></tr><?
     }
 }

A potřeboval bych vyhledávací políčko, do kterého když někdo napíše nějakou věc, která je v poli, tak se zvýrazní její vypsání v té tabulce.
Zkoušel jsem toto:

Kód: Vybrat vše

<form><input type='text' name='h'> <input type='submit' value='Vyhledat'></form>
...
if (isset($_GET["h"]))
 {
  $hledej = $_GET["h"];
 }
  else
    $hledej = "";
...
if ($hodnota == $hledej)
    $hodnota = "<span style='background-color:orange;' id='#zv'>$hodnota</span>";

A funguje to, ale já bych to potřeboval vyhledat bez znovunačtení stránky (pravděpodobně JS). Víte prosím někdo, jak na to? Děkuji předem!
Moje portfolio
Český jazyk je freeware, ale nikoliv open source!!!

Sestava:
► Zobrazit spoiler

Reklama
Uživatelský avatar
lamin_cz
Level 2.5
Level 2.5
Příspěvky: 320
Registrován: říjen 12
Bydliště: Kostelec u Holešova
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Hledání "CTRL+F" políčkem na webu

Příspěvekod lamin_cz » 12 led 2015 09:46

Něco podobného mám v jednom skriptu ... řeším to přes jQuery:
v HTML je tento input, přes který se hledá:

Kód: Vybrat vše

<input class="searchInHere" name="searchInHere" value="" placeholder="Vyhledat v této skupině" type="search" size="80" style="height: 20px" />

Samotný jQuery kód:
(kód provádí to, že nechá zobrazené jen ty prvky, které mají class jsFmFile a v atributu data-name je obsaženo ono vyhledávané jméno (jen to musí být přesná hodnota - bez rozdílu velikosti písmen)

Kód: Vybrat vše

$(document).ready(function(){

  $(document).on('input keypress paste change', '.searchInHere', function() {
    var term = $('input[name=searchInHere].searchInHere').val().toLowerCase();

    if(term)
      {
        // Ukážeme pouze ty produkty, které odpovídají hledání
        $('.jsFmFile').show();
       
        $('.jsFmFile').addClass('jsFmData');
        $('.neprovFil').addClass('neprov');
        $('.neprovFil').removeClass('neprovFil');
       
        var mans = $('.jsFmFile').filter(function() {
          return $(this).attr('data-name').toLowerCase().indexOf(term) > -1;
        });
       
        $('.jsFmFile').not(mans).hide();
        $('.jsFmFile').not(mans).removeClass('jsFmData');
        $('.neprov').not(mans).addClass('neprovFil');
        $('.neprovFil').not(mans).removeClass('neprov');
       
      }
    else
      {
        // Pokud vymaže pole s hledáním, tak ukážeme všechny
        $('.jsFmFile').fadeIn();
        $('.jsFmFile').addClass('jsFmData');
        $('.neprovFil').addClass('neprov');
        $('.neprovFil').removeClass('neprovFil');
      }
  });
});
  • CPU: Cx6x86L-PR150+
  • MB: XT PRO2
  • GPU: integrovaná
  • RAM: 28Mb SDRAM
PHP, MySQL, HTML, CSS, jQuery ...

Uživatelský avatar
kuxik009
Level 2.5
Level 2.5
Příspěvky: 338
Registrován: únor 13
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Hledání "CTRL+F" políčkem na webu

Příspěvekod kuxik009 » 12 led 2015 18:03

Super, to by bylo skvělé!
Jen prosím o dvě věci:
  1. Když si zatrhnu checkboxy, potom něco vyhledám a následně smažu hledání, zůstanou checkboxy zatrhlé?
  2. Mohl by jsi prosím kód upravit přesně na ten můj? :D V jQuery se vůbec nevyznám, ani ho nemám nainstalované (s tím souvisí - kterou verzi si mám stáhnout?)
Děkuju moc předem, moc si toho vážím!
Moje portfolio
Český jazyk je freeware, ale nikoliv open source!!!

Sestava:
► Zobrazit spoiler

Uživatelský avatar
lamin_cz
Level 2.5
Level 2.5
Příspěvky: 320
Registrován: říjen 12
Bydliště: Kostelec u Holešova
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Hledání "CTRL+F" políčkem na webu

Příspěvekod lamin_cz » 13 led 2015 11:59

ad 1. ta fce jen dané prvky schovává (přidá jím styl display:none;)

ad 2. snad v průběhu dneška na to budu mít čas.
  • CPU: Cx6x86L-PR150+
  • MB: XT PRO2
  • GPU: integrovaná
  • RAM: 28Mb SDRAM
PHP, MySQL, HTML, CSS, jQuery ...

Uživatelský avatar
kuxik009
Level 2.5
Level 2.5
Příspěvky: 338
Registrován: únor 13
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Hledání "CTRL+F" políčkem na webu

Příspěvekod kuxik009 » 13 led 2015 17:07

Super, díky moc! Jsem rád, že se jen schovají, protože, jelikož se jedná o formulář, je to celkem stěžejní. Kdyby zatrhnuté nezůstali, asi bych musel při kliknutí na checkbox např. uložit session nebo dočasnou tabulku do db, což je celkem prasárna, mít třeba 20 session :-o
A díky moc i za to upravení, moc si toho vážím! Jen vysvětlení - ta podmínka ve foreach je proto, aby zjistila, je-li položka sudá nebo lichá, a podle toho ji přiřadila do levého nebo pravého sloupečku tabulky (výsledek, zatím nedokončený). Ještě jednou díky! :thumbup:
Moje portfolio
Český jazyk je freeware, ale nikoliv open source!!!

Sestava:
► Zobrazit spoiler

Uživatelský avatar
lamin_cz
Level 2.5
Level 2.5
Příspěvky: 320
Registrován: říjen 12
Bydliště: Kostelec u Holešova
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Hledání "CTRL+F" políčkem na webu  Vyřešeno

Příspěvekod lamin_cz » 14 led 2015 09:09

úprava pro Tvé potřeby:
1. code (kdyby jsi nějak udělal, aby $hodnota nebylo v <span> </span> ... bylo by to ideální)

Kód: Vybrat vše

$pole = array(položky);
<table width="100%"><?
foreach ($pole as $klic => $hodnota)
 {
  $klic_del = $klic/2;
  $klic_zao = floor($klic_del);
  if ($klic_del == $klic_zao)
   {?>
    <tr><td width="50%" class="schovej" data-name="<? echo $hodnota ?>"><input type="checkbox" id="<?php echo $klic ?>"><label for='<? echo $klic ?>'><? echo $hodnota ?></label></td><?
   }
    else
     {?>
      <td width="50%" class="schovej" data-name="<? echo $hodnota ?>"><input type="checkbox" id="<?php echo $klic ?>"><label for='<? echo $klic ?>'><? echo $hodnota ?></label></td></tr><?
     }
 }


jQuery kod (vloz do stranky jako <script> ... </script> nebo to externiho .js souboru)

Kód: Vybrat vše

$(document).ready(function(){

  $(document).on('input keypress paste change', '.searchInHere', function() {
    var term = $('input[name=searchInHere].searchInHere').val().toLowerCase();

    if(term)
      {
        // Ukážeme pouze ty, které odpovídají hledání
        $('.schovej').show();
       
        var mans = $('.schovej').filter(function() {
          return $(this).attr('data-name').toLowerCase().indexOf(term) > -1;
        });
        // ty co neodpovidaji hledani se schovaji
        $('.schovej').not(mans).hide();
       
      }
    else
      {
        // Pokud vymaže pole s hledáním, tak ukážeme všechny
        $('.schovej').fadeIn();
      }
  });
});

Používám verzi jQuery 2.1.1

Input pouzij ten, ktery mam ja (v mem 1. prispevku). Muzes si ho upravit podle libosti, ale musi mit class a name searchInHere, v pripade zmeny to musis upravit i v jQuery kodu (class je .searchInHere a name je input[name=searchInHere])
  • CPU: Cx6x86L-PR150+
  • MB: XT PRO2
  • GPU: integrovaná
  • RAM: 28Mb SDRAM
PHP, MySQL, HTML, CSS, jQuery ...

Uživatelský avatar
kuxik009
Level 2.5
Level 2.5
Příspěvky: 338
Registrován: únor 13
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Hledání "CTRL+F" políčkem na webu

Příspěvekod kuxik009 » 14 led 2015 15:07

Díky moc, funguje to přesně tak, jak má!!! Ten span tam byl stejně jen protože jsem testoval vlastní hledání s JS, které ale nefungovalo :smile: . Ještě jednou díky!
Mimochodem: Díky taky za ukázání attributu placeholder, doteď jsem to řešil JS a CSS :D
Moje portfolio
Český jazyk je freeware, ale nikoliv open source!!!

Sestava:
► Zobrazit spoiler


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Program na hledání poškozených souborů JPG Příloha(y)
    od Rosta_Kolmix » 09 lis 2024 11:01 » v Design a grafické editory
    2
    4504
    od Minapark Zobrazit poslední příspěvek
    15 lis 2024 11:04
  • Hledání v průzkumníku Windows 11 je téměř nepoužitelné
    od -pavelk- » 20 říj 2024 18:46 » v Windows 11, 10, 8...
    6
    3085
    od -pavelk- Zobrazit poslední příspěvek
    21 říj 2024 15:36
  • Index webu Příloha(y)
    od Tondaaaa » 18 srp 2024 00:15 » v Web-tipy a vaše weby
    5
    11918
    od HelFix Zobrazit poslední příspěvek
    28 srp 2024 12:14
  • MEZERA NA WEBU Příloha(y)
    od webovynadsenec » 08 srp 2024 00:22 » v Programování a tvorba webu
    2
    6037
    od HelFix Zobrazit poslední příspěvek
    09 srp 2024 10:15
  • Tvorba webu/aplikací
    od matty » 09 lis 2024 13:41 » v Programování a tvorba webu
    6
    4374
    od domitea Zobrazit poslední příspěvek
    14 lis 2024 19:51

Zpět na “Programování a tvorba webu”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 7 hostů