This question has already been answered:

Here is a sample code (piece) on php:

foreach ($categories as $value) { echo "<div class=\"dish_category\">$value</div>"; while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { if ($row['category'] == $value) { echo "<div class=\"dish\">"; echo "<p class=\"dish_name\">".$row['name_of_dish']."</p>"; echo "<p>".$row['discription']."</p>"; echo "<p>".$row['weight']." Π³"."</p>"; echo "<p>".$row['price']." Π³Ρ€"."</p>"; echo "</div>"; } } mysql_data_seek($result, 0); } 

But jQuery:

 $(document).ready(function() { $(".dish").hide(); }); $(".dish_category").click(function () { $(".dish").show(); }); 

I would like the contents of the dish_category block to be initially hidden, and when I clicked on the same block, it would be shown. It hides normally, but it does not open on click. Tell me, please, what is the error.

Here is the text generated by php:

  <div class="dish_category">Π‘Π»ΡŽΠ΄Π° Π½Π° компанию</div> <div class="dish"><p class="dish_name">Π’Ρ€ΠΈ Ρ‚ΠΎΠ²Π°Ρ€ΠΈΡ‰Π°</p><p>Π›ΡŽΠ»Ρ ΠΊΠ΅Π±Π°Π± ΠΈΠ· Π±Π°Ρ€Π°Π½ΠΈΠ½Ρ‹, свиная шСя, ΠΊΡƒΡ€ΠΈΠ½ΠΎΠ΅ Ρ„ΠΈΠ»Π΅, ΠΊΠ°Ρ€Ρ‚ΠΎΡ„Π΅Π»ΡŒ ΠΏΠΎ-дСрСвСнски</p><p>1000 Π³</p><p>400 Π³Ρ€</p></div><div class="dish_category">Π‘Π»ΡŽΠ΄Π° ΠΎΡ‚ ΡˆΠ΅Ρ„Π°</div> <div class="dish"><p class="dish_name">ΠžΠ²ΠΎΡ‰ΠΈ Π² устричном соусС</p><p>Π‘Ρ€ΠΎΠΊΠΊΠΎΠ»ΠΈ, цвСтная капуста, ΠΌΠΎΡ€ΠΊΠΎΠ²ΡŒ, ΠΏΠ΅Ρ€Π΅Ρ† болгарский, рис, устричный соус </p><p>300 Π³</p><p>69 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">Π’Ρ‘ΠΏΠ»Ρ‹ΠΉ салат с тСлятиной</p><p>Π’Ρ‘ΠΏΠ»Ρ‹ΠΉ салат с тСлятиной, Π±Π°ΠΊΠ»Π°ΠΆΠ°Π½Π°ΠΌΠΈ, Ρ‡Π΅Ρ€Ρ€ΠΈ ΠΈ ΠΊΡƒΠ½ΠΆΡƒΡ‚ΠΎΠΌ ΠΏΠΎΠ΄ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ соусом</p><p>300 Π³</p><p>85 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">Π‘Π°Π»Π°Ρ‚ "Π¨Π°Ρ„Ρ€Π°Π½"</p><p>ΠšΡƒΡ€ΠΈΠ½Π°Ρ ΠΏΠ΅Ρ‡Π΅Π½ΡŒ, Ρ†ΡƒΠΊΠΊΠΈΠ½ΠΈ, Π³Ρ€ΠΈΠ±Ρ‹, ΠΏΠΎΠΌΠΈΠ΄ΠΎΡ€, ΠΎΠ³ΡƒΡ€Π΅Ρ†, микс салата с ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ соусом </p><p>250 Π³</p><p>75 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">Ночная ΠΎΡ…ΠΎΡ‚Π°</p><p>Π‘Π²ΠΈΠ½ΠΈΠ½Π° с Π»ΡƒΠΊΠΎΠΌ, болгарским ΠΏΠ΅Ρ€Ρ†Π΅ΠΌ, рисом ΠΈ с соусом ΠΎΡ‚ Π¨Π΅Ρ„Π° </p><p>300 Π³</p><p>125 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">ΠšΡƒΡ€ΠΈΡ†Π° ΠΏΠΎ-Азиатски</p><p>ΠšΡƒΡ€ΠΈΠ½ΠΎΠ΅ Π±Π΅Π΄Ρ€ΠΎ с рисом, ΠΌΠΎΡ€ΠΊΠΎΠ²ΡŒΡŽ, пСкинской капустой ΠΈ ΠΊΡƒΡ€ΠΈΠ½Ρ‹ΠΌ яйцом с азиатским соусом </p><p>300 Π³</p><p>105 Π³Ρ€</p></div> <div class="dish_category">ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ блюда</div><div class="dish"><p class="dish_name">ВСлятина с фрикасС ΠΈΠ· шампиньонов</p><p>ВСлятина Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΎΡ„Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΠ΄ΡƒΡˆΠΊΠ΅ с Π³Ρ€ΠΈΠ±Π½Ρ‹ΠΌ соусом </p><p>200 Π³</p><p>138 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">ΠšΡƒΡ€ΠΈΠ½Ρ‹Π΅ Ρ€ΡƒΠ»Π΅Ρ‚ΠΈΠΊΠΈ с сыром Π² сливочном соусС</p><p></p><p>200 Π³</p><p>80 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">Утиная Π³Ρ€ΡƒΠ΄ΠΊΠ° Π² клюквСнном соусС</p><p></p><p>170 Π³</p><p>128 Π³Ρ€</p></div><div class="dish"><p class="dish_name">Мясо ΠΏΠΎ-французски</p><p></p><p>200 Π³</p><p>90 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">Чёрная ΠΊΡƒΡ€ΠΈΡ†Π°</p><p>НСТноС сочСтаниС Π³Ρ€Π°Π½Π°Ρ‚Π° с восточными пряностями </p><p>170 Π³</p><p>79 Π³Ρ€</p></div><div class="dish_category">Π‘Π°Π»Π°Ρ‚Ρ‹</div> <div class="dish"><p class="dish_name">ГрСчСский</p><p></p><p>280 Π³</p><p>65 Π³Ρ€</p></div><div class="dish"><p class="dish_name">Π‘Π°Π»Π°Ρ‚ ΠΈΠ· свСТих ΠΎΠ²ΠΎΡ‰Π΅ΠΉ</p><p></p><p>240 Π³</p><p>59 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">Π’Ρ‘ΠΏΠ»Ρ‹ΠΉ салат Π² азиатском стилС</p><p>НСобычноС сочСтаниС свиной Π²Ρ‹Ρ€Π΅Π·ΠΊΠΈ ΠΈ ΠΊΡƒΡ€ΠΈΠ½ΠΎΠ³ΠΎ Ρ„ΠΈΠ»Π΅ ΠΏΠΎΠ΄ ΠΎΠ²ΠΎΡ‰Π½Ρ‹ΠΌ миксом </p><p>280 Π³</p><p>79 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">ОливьС с тСлятиной</p><p></p><p>300 Π³</p><p>74 Π³Ρ€</p></div><div class="dish"><p class="dish_name">Π€Ρ€Π΅Ρˆ салат с лососСм, мидиями ΠΈ с сыром Ρ„Π΅Ρ‚Π°</p><p></p><p>250 Π³</p><p>135 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">Π’Ρ‘ΠΏΠ»Ρ‹ΠΉ салат с ΠΌΠΎΡ€Π΅ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°ΠΌΠΈ</p><p></p><p>250 Π³</p><p>125 Π³Ρ€</p></div> <form action="new_dish.php" method="post" class="new_dish"> 

I connect this php code via include to the main php file and in the same place I connect js files. I want to note that the .dish blocks are hidden normally, so in theory, it’s not the way to deal.

Reported as a duplicate by Grundy members, aleksandr barakin , user194374, Alex , rjhdby 19 Dec '16 at 8:08 .

A similar question was asked earlier and an answer has already been received. If the answers provided are not exhaustive, please ask a new question .

  • It is better to add HTML to the example that is generated by your code than code that was taken out of context - koks_rs
  • Where is the script connected to your code? - Grundy

1 answer 1

And if you try it like this ... It’s possible that it isn’t in the DOM as an option yet, but it’s good that we’d use HTML ... This?

 $(document).ready(function() { $(".dish").hide(); $(".dish_category").click(function () { $(".dish").show(); }); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> <div class="dish_category">Π‘Π»ΡŽΠ΄Π° Π½Π° компанию</div> <div class="dish"><p class="dish_name">Π’Ρ€ΠΈ Ρ‚ΠΎΠ²Π°Ρ€ΠΈΡ‰Π°</p><p>Π›ΡŽΠ»Ρ ΠΊΠ΅Π±Π°Π± ΠΈΠ· Π±Π°Ρ€Π°Π½ΠΈΠ½Ρ‹, свиная шСя, ΠΊΡƒΡ€ΠΈΠ½ΠΎΠ΅ Ρ„ΠΈΠ»Π΅, ΠΊΠ°Ρ€Ρ‚ΠΎΡ„Π΅Π»ΡŒ ΠΏΠΎ-дСрСвСнски</p><p>1000 Π³</p><p>400 Π³Ρ€</p></div><div class="dish_category">Π‘Π»ΡŽΠ΄Π° ΠΎΡ‚ ΡˆΠ΅Ρ„Π°</div> <div class="dish"><p class="dish_name">ΠžΠ²ΠΎΡ‰ΠΈ Π² устричном соусС</p><p>Π‘Ρ€ΠΎΠΊΠΊΠΎΠ»ΠΈ, цвСтная капуста, ΠΌΠΎΡ€ΠΊΠΎΠ²ΡŒ, ΠΏΠ΅Ρ€Π΅Ρ† болгарский, рис, устричный соус </p><p>300 Π³</p><p>69 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">Π’Ρ‘ΠΏΠ»Ρ‹ΠΉ салат с тСлятиной</p><p>Π’Ρ‘ΠΏΠ»Ρ‹ΠΉ салат с тСлятиной, Π±Π°ΠΊΠ»Π°ΠΆΠ°Π½Π°ΠΌΠΈ, Ρ‡Π΅Ρ€Ρ€ΠΈ ΠΈ ΠΊΡƒΠ½ΠΆΡƒΡ‚ΠΎΠΌ ΠΏΠΎΠ΄ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ соусом</p><p>300 Π³</p><p>85 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">Π‘Π°Π»Π°Ρ‚ "Π¨Π°Ρ„Ρ€Π°Π½"</p><p>ΠšΡƒΡ€ΠΈΠ½Π°Ρ ΠΏΠ΅Ρ‡Π΅Π½ΡŒ, Ρ†ΡƒΠΊΠΊΠΈΠ½ΠΈ, Π³Ρ€ΠΈΠ±Ρ‹, ΠΏΠΎΠΌΠΈΠ΄ΠΎΡ€, ΠΎΠ³ΡƒΡ€Π΅Ρ†, микс салата с ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ соусом </p><p>250 Π³</p><p>75 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">Ночная ΠΎΡ…ΠΎΡ‚Π°</p><p>Π‘Π²ΠΈΠ½ΠΈΠ½Π° с Π»ΡƒΠΊΠΎΠΌ, болгарским ΠΏΠ΅Ρ€Ρ†Π΅ΠΌ, рисом ΠΈ с соусом ΠΎΡ‚ Π¨Π΅Ρ„Π° </p><p>300 Π³</p><p>125 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">ΠšΡƒΡ€ΠΈΡ†Π° ΠΏΠΎ-Азиатски</p><p>ΠšΡƒΡ€ΠΈΠ½ΠΎΠ΅ Π±Π΅Π΄Ρ€ΠΎ с рисом, ΠΌΠΎΡ€ΠΊΠΎΠ²ΡŒΡŽ, пСкинской капустой ΠΈ ΠΊΡƒΡ€ΠΈΠ½Ρ‹ΠΌ яйцом с азиатским соусом </p><p>300 Π³</p><p>105 Π³Ρ€</p></div> <div class="dish_category">ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ блюда</div><div class="dish"><p class="dish_name">ВСлятина с фрикасС ΠΈΠ· шампиньонов</p><p>ВСлятина Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΎΡ„Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΠ΄ΡƒΡˆΠΊΠ΅ с Π³Ρ€ΠΈΠ±Π½Ρ‹ΠΌ соусом </p><p>200 Π³</p><p>138 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">ΠšΡƒΡ€ΠΈΠ½Ρ‹Π΅ Ρ€ΡƒΠ»Π΅Ρ‚ΠΈΠΊΠΈ с сыром Π² сливочном соусС</p><p></p><p>200 Π³</p><p>80 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">Утиная Π³Ρ€ΡƒΠ΄ΠΊΠ° Π² клюквСнном соусС</p><p></p><p>170 Π³</p><p>128 Π³Ρ€</p></div><div class="dish"><p class="dish_name">Мясо ΠΏΠΎ-французски</p><p></p><p>200 Π³</p><p>90 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">Чёрная ΠΊΡƒΡ€ΠΈΡ†Π°</p><p>НСТноС сочСтаниС Π³Ρ€Π°Π½Π°Ρ‚Π° с восточными пряностями </p><p>170 Π³</p><p>79 Π³Ρ€</p></div><div class="dish_category">Π‘Π°Π»Π°Ρ‚Ρ‹</div> <div class="dish"><p class="dish_name">ГрСчСский</p><p></p><p>280 Π³</p><p>65 Π³Ρ€</p></div><div class="dish"><p class="dish_name">Π‘Π°Π»Π°Ρ‚ ΠΈΠ· свСТих ΠΎΠ²ΠΎΡ‰Π΅ΠΉ</p><p></p><p>240 Π³</p><p>59 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">Π’Ρ‘ΠΏΠ»Ρ‹ΠΉ салат Π² азиатском стилС</p><p>НСобычноС сочСтаниС свиной Π²Ρ‹Ρ€Π΅Π·ΠΊΠΈ ΠΈ ΠΊΡƒΡ€ΠΈΠ½ΠΎΠ³ΠΎ Ρ„ΠΈΠ»Π΅ ΠΏΠΎΠ΄ ΠΎΠ²ΠΎΡ‰Π½Ρ‹ΠΌ миксом </p><p>280 Π³</p><p>79 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">ОливьС с тСлятиной</p><p></p><p>300 Π³</p><p>74 Π³Ρ€</p></div><div class="dish"><p class="dish_name">Π€Ρ€Π΅Ρˆ салат с лососСм, мидиями ΠΈ с сыром Ρ„Π΅Ρ‚Π°</p><p></p><p>250 Π³</p><p>135 Π³Ρ€</p></div> <div class="dish"><p class="dish_name">Π’Ρ‘ΠΏΠ»Ρ‹ΠΉ салат с ΠΌΠΎΡ€Π΅ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°ΠΌΠΈ</p><p></p><p>250 Π³</p><p>125 Π³Ρ€</p></div> <form action="new_dish.php" method="post" class="new_dish"> 

  • and what the given code should do? - Grundy
  • I just transferred the handler to the ready function ... - Slavik Mojito
  • worth adding an explanation in response - Grundy
  • So it works .. Thank you! But it’s not quite clear why I need it after loading the document, because if I wait 5-10 seconds after loading, the function still doesn’t work, but the document is clearly already loaded ... It turns out that all functions need to be written after ready? - Sky_UA
  • do not forget to put the birdie next to it) I don’t know the exact mechanism of the work of your document, but the way to do it is ... - Slavik Mojito