2013-03-21 1 views
2

Следующий код помещается в (документ) .ready функции и работает для отображения формы заказа правильно:PHP JQuery документ готов добавив IF заявление брейки .Show()

<?php if (isset($_POST['preview-order'])) { //IF PREVIEW FORM ?> 
      $("#cam-order-preview").show('slow'); 
    <?php } else {        //ELSE ORDER FORM ?>    
     if (lastAreaVisible != "") { 
      $("#<?php echo $_SESSION['last_area_visible'];?>").css("visibility", "visible"); 
      $("#<?php echo $_SESSION['last_area_visible'];?>").css("position", "relative"); 
      $("#<?php echo $_SESSION['last_area_visible'];?>").css("display", "block"); 
      $("#<?php echo $_SESSION['last_area_visible'];?>").show('slow');    
     } 
      $("#cam-order-form").show('slow'); 
      $("#cam-order-nav").show('slow');     
      $("#order-comment-box").show('slow'); 

Проблема заключается в том, если Значение «last_area_visible» установлено, я хочу условно скрыть другие разделы, поэтому я добавляю инструкцию else так, но оператор else заставляет всю форму ломаться и ничего не отображаться, как если бы jquery прекратил разбор.

<?php if (isset($_POST['preview-order'])) { //IF PREVIEW FORM ?> 
       $("#cam-order-preview").show('slow'); 
     <?php } else  {        //ELSE ORDER FORM ?>    
if (lastAreaVisible != "") { 
$("#<?php echo $_SESSION['last_area_visible'];?>").css("visibility", "visible"); 
$("#<?php echo $_SESSION['last_area_visible'];?>").css("position", "relative"); 
$("#<?php echo $_SESSION['last_area_visible'];?>").css("display", "block"); 
$("#<?php echo $_SESSION['last_area_visible'];?>").show('slow');   
} else { 
$("#cam-order-form").show('slow'); 
$("#cam-order-nav").show('slow');     
$("#order-comment-box").show('slow'); 
} 

Любое понимание? Верхний код работает и отображает все разделы, я просто хочу скрыть нижние три, но jquery не нравится по какой-то странной причине.

+0

Какая ошибка вы получаете в консоли браузера? –

+0

Кроме того, можно ли вставить этот раздел кода из источника страницы, чтобы мы могли видеть, что дает PHP? –

+0

Использование Opera, есть только ошибки CSS в консоли, все из jquery-ui.css ничего не связано с JS вообще. атрибут стиля HTML и свойство стиля DOM для свойства zoom –

ответ

0

Наконец-то выяснилось, что эта проблема возникла из-за того, что селектора в верхнем блоке были фактически вложенными div внутри кулачковой формы заказа. Добавление

$("#cam-order-form").show('slow'); 
$("#cam-order-nav").hide('slow'); 

наверху, если блок допускает поведение по мере необходимости из-за гнездования div.

Так что еще одна вещь, которую следует соблюдать при показе или скрытии, дает неожиданные результаты: проверьте вложенность divs, которые вы пытаетесь показать.