Требуется знание javascript

Discussion in 'PHP' started by selevit, 29 Aug 2009.

  1. selevit

    selevit Banned

    Joined:
    19 Aug 2009
    Messages:
    95
    Likes Received:
    9
    Reputations:
    -3
    Всем доброго времени суток, я делаю форму добавления постов на свой сайт, и у меня такая проблема, есть два раздела - софт и игры, и в каждом разделе несколько категорий, вот пример выбора

    [​IMG]




    вот к примеру код кнопок с разделами:

    HTML:
    <input name="soft" type="button" value="Софт">
    <input name="games" type="button" value="Игры">
    Подскажите, что сюда надо добавить, чтобы при нажатии на одну из кнопок выводился список категорий в таком виде:


    [​IMG]
     
    #1 selevit, 29 Aug 2009
    Last edited: 29 Aug 2009
  2. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    http://www.htmlbook.ru/html/select.html
     
  3. selevit

    selevit Banned

    Joined:
    19 Aug 2009
    Messages:
    95
    Likes Received:
    9
    Reputations:
    -3
    Вы меня не поняли, мне нужно, чтобы при нажатии на одну из кнопкок баттон выводился спикок категорий, соответствующий разделу данной кнопки:


    [​IMG]
     
  4. selevit

    selevit Banned

    Joined:
    19 Aug 2009
    Messages:
    95
    Likes Received:
    9
    Reputations:
    -3
    я так понимаю все это пишется на яваскрипт, можно привести пример кода? :)
     
  5. diGriz

    diGriz Elder - Старейшина

    Joined:
    11 Oct 2006
    Messages:
    138
    Likes Received:
    82
    Reputations:
    6
    Реализация с помощью jQuery.

    Code:
    <script src='js/jquery.js' type='text/javascript'></script>
    <script type="text/javascript">
    		$(document).ready(function(){		
    				$('#soft').click(function() {
    							$.ajax({
    							type: "POST",
    							url: "jres2.php",
    							data: "type="+1,
    							success: function(html){
    								$("#categories").html(html);
    							}
    						});
    				});	
    				$('#games').click(function() {
    							$.ajax({
    							type: "POST",
    							url: "jres2.php",
    							data: "type="+2,
    							success: function(html){
    								$("#categories").html(html);
    							}
    						});
    				});					
    	 		});				
    	</script>
    <input name="soft" type="button" value="софт" id="soft"/>
    <input name="games" type="button" value="игры" id="games"/>
    <div id="categories">
    	
    </div>
    
    Софт это тип=1, игры=2.
    PHP:
    <?php
    if($_POST['type'] == '1') {
        
    $html '<select name="spisok">
                    <option>Soft 1</option>
                    <option>Soft 2</option>
                </select>
                '
    ;
        echo 
    $html;
    }
    if(
    $_POST['type'] == '2') {
        
    $html '<select name="spisok">
                    <option>Game 1</option>
                    <option>Game 2</option>
                </select>
                '
    ;
        echo 
    $html;
    }
    ?>
     
    #5 diGriz, 29 Aug 2009
    Last edited: 29 Aug 2009
  6. selevit

    selevit Banned

    Joined:
    19 Aug 2009
    Messages:
    95
    Likes Received:
    9
    Reputations:
    -3
    я в этом вообще почти не шарю - как мне это реализовать на своей странице?
     
  7. diGriz

    diGriz Elder - Старейшина

    Joined:
    11 Oct 2006
    Messages:
    138
    Likes Received:
    82
    Reputations:
    6
    1) Качаешь jQuery с jQuery.com
    2) Создаешь файл, например, index.php, пишешь туда код из 1-го скрипта.
    3) Создаешь файл jres2.php в этой же папке. В нем в зависимости от пришедшего значения формируется список. Значения, которые будут в списке можешь выбирать из бд, ну или если они постоянные можешь их задать в jres2.php. Можно форму тоже сделать в jres2.php или в уже готовую подставлять список(<div id="categories">).

    Попробуй сначала, так сделать. Потом когда разберешься, можешь делать на своем сайте.
     
  8. selevit

    selevit Banned

    Joined:
    19 Aug 2009
    Messages:
    95
    Likes Received:
    9
    Reputations:
    -3
    мне надо, чтобы при нажатии кнопки сразу на этой же странице выводился списока категорий, вот что я хочу.
     
  9. selevit

    selevit Banned

    Joined:
    19 Aug 2009
    Messages:
    95
    Likes Received:
    9
    Reputations:
    -3
    извините за наглость, можно код, чтобы я просто вставил его в форму и все работало?
     
  10. diGriz

    diGriz Elder - Старейшина

    Joined:
    11 Oct 2006
    Messages:
    138
    Likes Received:
    82
    Reputations:
    6
    Ты хоть форму свою покажи. Вообщем, для примера форма.
    Code:
    <form action="someshit.php" method="post">
    <input type="text" name="text1"/>
    <input type="text" name="text2"/>
    <div id="categories">
    <!-- тут будет список-->
    </div>
    <input type="submit" />
    </form>
    
    + к этому подключаешь jquery и создаешь файл jres2.php
     
  11. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    PHP:
    <script language="JavaScript">
    function 
    Menue() {
          
    document.all.soft1.style.visibility="visible"
          
    document.all.games1.style.visibility="hidden"
    }
    function 
    Menue1() {
       
    document.all.soft1.style.visibility="hidden"
       
    document.all.games1.style.visibility="visible"
    }
    </script>
    <input name="soft" type="button" value="Софт" onClick="Menue()"><input name="games" type="button" value="Игры" onClick="Menue1()">
    <br>
    <br>
    <select id="soft1" size="1" name="soft1" style="visibility:hidden;">
    <option selected value>Soft - 1</option>
    <option>Soft-2</option>
    </select></div>
    <select id="games1" size="1" name="games1" style="visibility:hidden;">
    <option selected value>Games - 1</option>
    <option>Games-2</option>
    </select></div>
     
  12. selevit

    selevit Banned

    Joined:
    19 Aug 2009
    Messages:
    95
    Likes Received:
    9
    Reputations:
    -3
    спасибо всем!!! я разобрался!!!
     
  13. diGriz

    diGriz Elder - Старейшина

    Joined:
    11 Oct 2006
    Messages:
    138
    Likes Received:
    82
    Reputations:
    6
    2 Pashkela
    Так будут передаваться значения сразу из 2-х списков.
     
  14. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Куда передаваться? Я просто ответил на вопрос из первого поста. Передачу не осуществлял. Не вижу никаких проблем с передачей в будущем - у всех select свой id и name. Если так нужна передача данных в PHP - пожалуйста:

    PHP:
    <script language="JavaScript">
    function Menue() {
          document.all.soft1.style.visibility="visible"
          document.all.games1.style.visibility="hidden"
    }
    function Menue1() {
       document.all.soft1.style.visibility="hidden"
       document.all.games1.style.visibility="visible"
    }
    </script>
    <form method="post">
    <input name="soft" type="button" value="Софт" onClick="Menue()">&nbsp;&nbsp;&nbsp;<input name="games" type="button" value="Игры" onClick="Menue1()">
    <br>
    <br>
    <select id="soft1" size="1" name="soft1" style="visibility:hidden;">
      <option selected value>Выберите софт:</option> 
      <option>Soft-1</option>
      <option>Soft-2</option>
      <option>Soft-3</option>
      <option>Soft-4</option>
      <option>Soft-5</option>
    </select></div>
    <select id="games1" size="1" name="games1" style="visibility:hidden;">
      <option selected value>Выберите игру:</option> 
      <option>Games-1</option>
      <option>Games-2</option>
      <option>Games-3</option>
      <option>Games-4</option>
      <option>Games-5</option>
    </select></div>
    <br>
    <br>
    <input type="submit" value="Выбрать" />
    </form>
    <?php
    $soft 
    $_POST['soft1'];
    $game $_POST['games1'];
    if (
    $soft) echo "Вы выбрали софт - $soft";
    if (
    $game) echo "Вы выбрали игру - $game";
    ?>
    и без всяких jquery
     
    #14 Pashkela, 29 Aug 2009
    Last edited: 29 Aug 2009