За последние 24 часа нас посетили 16460 программистов и 1678 роботов. Сейчас ищут 882 программиста ...

связанные списки. проблема в сохранении выбора

Тема в разделе "JavaScript и AJAX", создана пользователем Juriy, 18 авг 2011.

  1. Juriy

    Juriy Активный пользователь

    С нами с:
    3 авг 2011
    Сообщения:
    8
    Симпатии:
    0
    имеется часть index страница такого вида

    Код (Text):
    1.  
    2.  
    3.       <form id="form1"  name="form1" method="get" action="show.php">
    4.         <select id="mark" name="mark">
    5.           <option value="">--</option>
    6.           <option value="100">BMW</option>
    7.           <option value="101">Audi</option>
    8.         </select>
    9.         <select id="series" name="series">
    10.           <option value="">--</option>          
    11.           <option value="1" class="100">1 series</option>
    12.           <option value="3" class="100">3 series</option>
    13.           <option value="5" class="100">5 series</option>
    14.           <option value="6" class="100">6 series</option>
    15.           <option value="7" class="100">7 series</option>
    16.          
    17.           <option value="11" class="101">A1</option>
    18.           <option value="23" class="101">A3</option>
    19.           <option value="33" class="101">S3</option>
    20.           <option value="44" class="101">A4</option>
    21.           <option value="54" class="101">S4</option>
    22.          
    23.         </select>
    24.        
    25.          <button name="" type="submit" > Find! </button>
    26.               </p>
    27.          
    28.       </form>    
    29.    
    30.  
    31.   <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript" charset="utf-8"></script>
    32.   <script src="js/jquery.chained.js" type="text/javascript" charset="utf-8"></script>
    33.   <script type="text/javascript" charset="utf-8">
    34.   $(function() {    
    35.    
    36.     $("#series").chained("#mark");
    37.  
    38.  
    39.    
    40.   });
    41.   </script>
    42.  
    43.  
    затем, такой скрипт
    Код (Text):
    1. (function($) {
    2.  
    3.     $.fn.chained = function(parent_selector, options) {
    4.        
    5.         return this.each(function() {
    6.            
    7.             /* Save this to self because this changes when scope changes. */            
    8.             var self   = this;
    9.             var backup = $(self).clone();
    10.                        
    11.             /* Handles maximum two parents now. */
    12.             $(parent_selector).each(function() {
    13.                                                
    14.                 $(this).bind("change", function() {
    15.                     $(self).html(backup.html());
    16.  
    17.                    
    18.                     var selected = "";
    19.                    
    20.                     selected = selected.substr(1);
    21.  
    22.                     /* Also check for first parent without subclassing. */
    23.                     /* TODO: This should be dynamic and check for each parent */
    24.                     /*       without subclassing. */
    25.                     var first = $(parent_selector).first();
    26.                     var selected_first = $(":selected", first).val();
    27.                
    28.                     $("option", self).each(function() {
    29.                         /* Remove unneeded items but save the default value. */
    30.                         if (!$(this).hasClass(selected) &&
    31.                             !$(this).hasClass(selected_first) && $(this).val() !== "") {
    32.                                 $(this).remove();
    33.                         }                        
    34.                     });
    35.                
    36.                     /* If we have only the default value disable select. */
    37.                     if (1 == $("option", self).size() && $(self).val() === "") {
    38.                         $(self).attr("disabled", "disabled");
    39.                     } else {
    40.                         $(self).removeAttr("disabled");
    41.                     }
    42.                     $(self).trigger("change");
    43.                 });
    44.                
    45.                 /* Force IE to see something selected on first page load. */
    46.                 $("option", this).first().attr("selected", "selected");
    47.                
    48.                 /* Force updating the children. */
    49.                 $(this).trigger("change");            
    50.  
    51.             });
    52.         });
    53.     };
    54.    
    55.     /* Alias for those who like to use more English like syntax. */
    56.     $.fn.chainedTo = $.fn.chained;
    57.    
    58. })(jQuery);
    show.php
    Код (Text):
    1. <?php
    2. if (isset($_GET['mark']))
    3.     {
    4.     $papar_car=$_GET['mark'];
    5.    
    6.     }  
    7. if (isset($_GET['series']))
    8.     {
    9.     $papar_ser=$_GET['series'];
    10.    
    11.     }
    12. ?>
    13. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    14. <html xmlns="http://www.w3.org/1999/xhtml">
    15.  
    16. <head>
    17. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    18.  
    19. </head>
    20.  
    21. <body>
    22.  
    23.       <form id="form1"  name="form1" method="get" action="show.php">
    24.         <select id="mark" name="mark">
    25.           <option value="">--</option>
    26.           <option value="100"<? if($papar_car=="100")echo "selected='selected'"; ?>>BMW</option>
    27.           <option value="101"<? if($papar_car=="101")echo "selected='selected'"; ?>>Audi</option>
    28.         </select>
    29.         <select id="series" name="series">
    30.           <option value="">--</option>
    31.          
    32.           <option value="1" class="100" <? if($papar_ser=="1")echo "selected='selected'"; ?>>1 series</option>
    33.           <option value="3" class="100"<? if($papar_ser=="3")echo "selected='selected'"; ?>>3 series</option>
    34.           <option value="5" class="100"<? if($papar_ser=="5")echo "selected='selected'"; ?>>5 series</option>
    35.           <option value="6" class="100"<? if($papar_ser=="6")echo "selected='selected'"; ?>>6 series</option>
    36.           <option value="7" class="100<? if($papar_ser=="7")echo "selected='selected'"; ?>">7 series</option>
    37.          
    38.           <option value="11" class="101" <? if($papar_ser=="11")echo "selected='selected'"; ?>>A1</option>
    39.           <option value="23" class="101" <? if($papar_ser=="23")echo "selected='selected'"; ?>>A3</option>
    40.           <option value="33" class="101"<? if($papar_ser=="33")echo "selected='selected'"; ?>>S3</option>
    41.           <option value="44" class="101" <? if($papar_ser=="44")echo "selected='selected'"; ?>>A4</option>
    42.           <option value="54" class="101"<? if($papar_ser=="54")echo "selected='selected'"; ?>>S4</option>
    43.          
    44.         </select>
    45.        
    46.          <button name="" type="submit" > Find! </button>
    47.               </p>
    48.          
    49.       </form>
    50.      
    51.             <script type="text/javascript" language="javascript">        
    52.           var car_m= <?php echo $_POST['mark']; ?>
    53.           </script>
    54.          
    55.           <script type="text/javascript" language="javascript">      
    56.           var car_m_s= <?php echo $_POST['series']; ?>
    57.           </script>
    58.  
    59.   <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript" charset="utf-8"></script>
    60.   <script src="js/jquery.chained.js" type="text/javascript" charset="utf-8"></script>  
    61.   <script type="text/javascript" charset="utf-8">
    62.   $(function() {    
    63.    
    64.     $("#series").chained("#mark");  
    65.    
    66.   });
    67.   </script>
    загвоздка в следующем. на странице index выбираю категорию из form1. затем жму submit. перехожу на show, и хочу увидеть те значения которые выбирал на странице index. как решить?