За последние 24 часа нас посетили 18873 программиста и 1615 роботов. Сейчас ищут 664 программиста ...

oDependedOptions не видит массив

Тема в разделе "Регулярные выражения", создана пользователем Vdrebezge, 1 сен 2010.

  1. Vdrebezge

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

    С нами с:
    1 сен 2010
    Сообщения:
    12
    Симпатии:
    0
    Имеется код который должен пр и выборе типа недвижимости выводить определённый диапазон площадей.
    Код
    PHP:
    1.         <div class="caption">Фильтр поиска</div>
    2. <form class="zf searchFilter" name="<?echo $arResult["FILTER_NAME"]."_form"?>" action="<?echo $arResult["FORM_ACTION"]?>" method="get">
    3.     <div class="formLine">
    4.         <?foreach($arResult["ITEMS"] as $arItem):
    5.             if(array_key_exists("HIDDEN", $arItem)):
    6.                 echo $arItem["INPUT"];
    7.             endif;
    8.         endforeach;?>
    9.         <?foreach($arResult["ITEMS"] as $arItem):?>
    10.             <?if(!array_key_exists("HIDDEN", $arItem)):?>
    11.         <tr>
    12.             <td valign="top"><?=$arItem["NAME"]?>:</td>
    13.             <td valign="top"><?=$arItem["INPUT"]?></td>
    14.         </tr>
    15.             <?endif?>
    16.         <?endforeach;?>
    17.     </div>
    18.     <div class="formLine gray">
    19.         <div class="left">
    20.             <label for="Cntrl_Filter[SquareInd]" class="w100">Площадь</label>
    21.             <select id="Cntrl_Filter[SquareInd]" name="Filter[SquareInd]" class="zf w136 inpText" onclick="return { oDependedOptions : { sName : 'arrFilter_pf[TYPE]', aData : [['', ''], ['3', /^$|^0{1}[1-4]$/], [/^[124]$/, /^$|^1{1}[0-4]$/]] } }">
    22.                 <option value="">Все</option>
    23.                 <option value="01"<?php if($_GET["Filter"]["SquareInd"]==01) echo 'selected';?>>0 - 500</option>
    24.                 <option value="02"<?php if($_GET["Filter"]["SquareInd"]==02) echo 'selected';?>>500 - 1 000</option>
    25.                 <option value="03"<?php if($_GET["Filter"]["SquareInd"]==03) echo 'selected';?>>1 000 - 10 000</option>
    26.                 <option value="04"<?php if($_GET["Filter"]["SquareInd"]==04) echo 'selected';?>>10 000 +</option>
    27.                 <option value="10"<?php if($_GET["Filter"]["SquareInd"]==10) echo 'selected';?>>0 - 50</option>
    28.                 <option value="11"<?php if($_GET["Filter"]["SquareInd"]==11) echo 'selected';?>>50 - 100</option>
    29.                 <option value="12"<?php if($_GET["Filter"]["SquareInd"]==12) echo 'selected';?>>100 -150</option>
    30.                 <option value="13"<?php if($_GET["Filter"]["SquareInd"]==13) echo 'selected';?>>150 - 200</option>
    31.                 <option value="14"<?php if($_GET["Filter"]["SquareInd"]==14) echo 'selected';?>>200 +</option>
    32.             </select>
    33.  
    34.             <label for="Cntrl_Filter[CostType]">Цена</label>
    35.             <select id="Cntrl_Filter[CostType]" name="Filter[CostType]" class="zf inpText mr0">
    36.                 <option value="1"<?php if($_GET["Filter"]["CostType"]==01) echo 'selected';?>>полная</option>
    37.                 <option value="2"<?php if($_GET["Filter"]["CostType"]==02) echo 'selected';?>>за 1м²</option>
    38.             </select>
    39.             <select id="Cntrl_Filter[CostInd]" name="Filter[CostInd]" class="zf inpText mr0 w130" onclick="return { oDependedOptions : { aFrom: [ { sName : 'arrFilter_pf[TYPE]', aData : [['', ''], [/^[124]$/, /^$|^0{1}[1-6]$/], [/^[124]$/, /^$|^2{1}[0-4]$/], ['3', /^$|^0{1}[1-6]$/], ['3', /^$|^1{1}[0-5]$/]] }, { sName : 'Filter[CostType]', aData : [[/^[1-2]$/, ''], ['1', /^$|^0{1}[1-6]$/], ['2', /^$|^2{1}[0-4]$/], ['2', /^$|^1{1}[0-5]$/]]} ] } }">
    40.                 <option value="">Все</option>
    41.                 <option value="01"<?php if($_GET["Filter"]["CostInd"]==01) echo 'selected';?>>0 - 50 000</option>
    42.                 <option value="02"<?php if($_GET["Filter"]["CostInd"]==02) echo 'selected';?>>50 000 - 100 000</option>
    43.                 <option value="03"<?php if($_GET["Filter"]["CostInd"]==03) echo 'selected';?>>100 000 - 150 000</option>
    44.                 <option value="04"<?php if($_GET["Filter"]["CostInd"]==04) echo 'selected';?>>150 000 - 200 000</option>
    45.                 <option value="05"<?php if($_GET["Filter"]["CostInd"]==05) echo 'selected';?>>200 000 - 300 000</option>
    46.                 <option value="06"<?php if($_GET["Filter"]["CostInd"]==06) echo 'selected';?>>300 000 +</option>
    47.                 <option value="10"<?php if($_GET["Filter"]["CostInd"]==10) echo 'selected';?>>0 - 50</option>
    48.                 <option value="11"<?php if($_GET["Filter"]["CostInd"]==11) echo 'selected';?>>50 - 100</option>
    49.                 <option value="12"<?php if($_GET["Filter"]["CostInd"]==12) echo 'selected';?>>100 - 150</option>
    50.                 <option value="13"<?php if($_GET["Filter"]["CostInd"]==13) echo 'selected';?>>150 - 200</option>
    51.                 <option value="14"<?php if($_GET["Filter"]["CostInd"]==14) echo 'selected';?>>200 - 300</option>
    52.                 <option value="15"<?php if($_GET["Filter"]["CostInd"]==15) echo 'selected';?>>300 +</option>
    53.                 <option value="20"<?php if($_GET["Filter"]["CostInd"]==20) echo 'selected';?>>0 - 1 000</option>
    54.                 <option value="21"<?php if($_GET["Filter"]["CostInd"]==21) echo 'selected';?>>1 000 - 1 500</option>
    55.                 <option value="22"<?php if($_GET["Filter"]["CostInd"]==22) echo 'selected';?>>1 500 - 2 000</option>
    56.                 <option value="23"<?php if($_GET["Filter"]["CostInd"]==23) echo 'selected';?>>2 500 - 3 000</option>
    57.                 <option value="24"<?php if($_GET["Filter"]["CostInd"]==24) echo 'selected';?>>3 000 +</option>
    58.            </select>
    59.             &euro;
    60.         </div>
    61.         <div class="right">
    62.             <input type="submit" class="inpBtn" name="set_filter" value="<?=GetMessage("IBLOCK_SET_FILTER")?>" />
    63.             <input type="hidden" class="inpBtn" name="set_filter" value="Y" />&nbsp;&nbsp;<input type="submit" class="inpBtn" name="del_filter" value="<?=GetMessage("IBLOCK_DEL_FILTER")?>" />
    64.         </div>
    65.     </div>
    66. </form>
    В коде страницы это выглядит так:
    Код

    HTML:
    1. <form class="zf searchFilter" name="arrFilter_form" action="/?Filter=&amp;arrFilter_pf%5BADDRESS%5D=&amp;arrFilter_pf%5BTYPE%5D=1&amp;Filter%5BSquareInd%5D=01&amp;Filter%5BCostType%5D=1&amp;Filter%5BCostInd%5D=02&amp;set_filter=%D0%A4%D0%B8%D0%BB%D1%8C%D1%82%D1%80&amp;set_filter=Y" method="get">
    2.     <div class="formLine">
    3.         <input type="hidden" name="Filter" value="" />                            <tr>
    4.             <td valign="top">Адрес:</td>
    5.             <td valign="top"><select name="arrFilter_pf[ADDRESS]"><option value="">(все)</option><option value="22">Балабушичи (Герцег Нови)</option><option value="23">Баошичи (Герцег Нови)</option><option value="24">Бечичи (Будва)</option><option value="25">Биела (Герцег Нови)</option></select></td>
    6.  
    7.         </tr>
    8.                                         <tr>
    9.             <td valign="top">Тип:</td>
    10.             <td valign="top"><select name="arrFilter_pf[TYPE]"><option value="">(все)</option><option selected value="1">Квартира</option><option value="2">Вилла, Дом</option><option value="3">Участок</option><option value="4">Коммерческая</option><option value="21">ТЕСТ</option></select></td>
    11.         </tr>
    12.  
    13.                                             </div>
    14.     <div class="formLine gray">
    15.         <div class="left">
    16.             <label for="Cntrl_Filter[SquareInd]" class="w100">Площадь</label>
    17.             <select id="Cntrl_Filter[SquareInd]" name="Filter[SquareInd]" class="zf w136 inpText" onclick="return { oDependedOptions : { sName : 'arrFilter_pf[TYPE]', aData : [['', ''], ['3', /^$|^0{1}[1-4]$/], [/^[124]$/, /^$|^1{1}[0-4]$/]] } }">
    18.                 <option value="">Все</option>
    19.                 <option value="01"selected>0 - 500</option>
    20.  
    21.                 <option value="02">500 - 1 000</option>
    22.                 <option value="03">1 000 - 10 000</option>
    23.                 <option value="04">10 000 +</option>
    24.                 <option value="10">0 - 50</option>
    25.                 <option value="11">50 - 100</option>
    26.                 <option value="12">100 -150</option>
    27.  
    28.                 <option value="13">150 - 200</option>
    29.                 <option value="14">200 +</option>
    30.             </select>
    31.  
    32.             <label for="Cntrl_Filter[CostType]">Цена</label>
    33.             <select id="Cntrl_Filter[CostType]" name="Filter[CostType]" class="zf inpText mr0">
    34.                 <option value="1"selected>полная</option>
    35.  
    36.                 <option value="2">за 1м²</option>
    37.             </select>
    38.             <select id="Cntrl_Filter[CostInd]" name="Filter[CostInd]" class="zf inpText mr0 w130" onclick="return { oDependedOptions : { aFrom: [ { sName : 'arrFilter_pf[TYPE]', aData : [['', ''], [/^[124]$/, /^$|^0{1}[1-6]$/], [/^[124]$/, /^$|^2{1}[0-4]$/], ['3', /^$|^0{1}[1-6]$/], ['3', /^$|^1{1}[0-5]$/]] }, { sName : 'Filter[CostType]', aData : [[/^[1-2]$/, ''], ['1', /^$|^0{1}[1-6]$/], ['2', /^$|^2{1}[0-4]$/], ['2', /^$|^1{1}[0-5]$/]]} ] } }">
    39.                 <option value="">Все</option>
    40.                 <option value="01">0 - 50 000</option>
    41.                 <option value="02"selected>50 000 - 100 000</option>
    42.                 <option value="03">100 000 - 150 000</option>
    43.  
    44.                 <option value="04">150 000 - 200 000</option>
    45.                 <option value="05">200 000 - 300 000</option>
    46.                 <option value="06">300 000 +</option>
    47.                 <option value="10">0 - 50</option>
    48.                 <option value="11">50 - 100</option>
    49.                 <option value="12">100 - 150</option>
    50.  
    51.                 <option value="13">150 - 200</option>
    52.                 <option value="14">200 - 300</option>
    53.                 <option value="15">300 +</option>
    54.                 <option value="20">0 - 1 000</option>
    55.                 <option value="21">1 000 - 1 500</option>
    56.                 <option value="22">1 500 - 2 000</option>
    57.  
    58.                 <option value="23">2 500 - 3 000</option>
    59.                 <option value="24">3 000 +</option>
    60.            </select>
    61.             &euro;
    62.         </div>
    63.         <div class="right">
    64.             <input type="submit" class="inpBtn" name="set_filter" value="Фильтр" />
    65.             <input type="hidden" class="inpBtn" name="set_filter" value="Y" />&nbsp;&nbsp;<input type="submit" class="inpBtn" name="del_filter" value="Сбросить" />
    66.  
    67.         </div>
    68.     </div>
    69. </form>
    Мозила выдаёт ошибку "uncaught exception: ZForms: Widget with name/id "arrFilter_pf[TYPE]" no exists"
    Не могли ьы подсказать в чём дело и почему oDependedOptions не видит arrFilter_pf[TYPE]...Заранее благодарю