2013-06-17 5 views
0

이 특정 문제에 대해서는 보통 preventDefault()를 사용합니다. 그러나이 경우에는 작동하지 않습니다. 누군가가 이걸 도와 주면 감사 할 것입니다. 여기에 내 코드의 일부는 다음과 같습니다live ('클릭') 처음 실행시 ajaxForm()에서 slideDown() 작업을 수행하는 방법

  $('.place_order').live('click',function(){ 
         $('#place_order_form').ajaxForm(function(){ 
         $('#shopping_cart').slideDown(150,function(){ 

         $('#shopping_cart').load('url here'); 

         $('#shopping_cart').css('display','block'); 
         $('#shopping_cart').css('height','290'); 

         }); 
         }).submit(); 
      }); 

그것은() 실행 slideUp 후 잘 작동하지만 처음에 그냥 slideDown없이 데이터를로드를 클릭합니다. 내가 멍청한 Jquery 개발자이기 때문에 어떤 도움을 주셔서 감사합니다.

+0

jQuery를 어떤 버전의'라이브() '최신 버전에서 제거하고, 오래 전에 사용되지 않습니다? – adeneo

+0

jQuery JavaScript Library v1.9.1. 동일한 코드가 작동합니다. 문제는 쇼핑 카트를 처음 클릭 할 때 장바구니가 표시되지만 아래로 내려 가지 않는다는 것입니다. 숨기고 주문을 다시 클릭하면 작동합니다. –

+0

1.9에서'live()'가 제거되었으므로 위임 된 버전의'on()'을 대신 사용하십시오. Stack Overflow에 대한 검색을 수행하면'on()'을 사용하는 방법에 대한 gazillion 답을 찾을 수 있습니다. – adeneo

답변

1

은 다음과 같이 그것을 시도 :

$(document).on('click', '.place_order', function(){ 
    $('#place_order_form').ajaxForm(function(){ 
     $('#shopping_cart').hide().load('url here', function() { 
      $(this).slideDown(150); 
     }); 
    }).submit(); 
}); 
+0

첫 번째 클릭시 슬라이드 다운없이 내용이로드됩니다. 더 많은 클릭 수에서도 콘텐츠가로드되지만 slideDown으로로드됩니다. –

+0

그것은 그렇게 작동해야하며 지금 당장 ajaxForm 플러그인을 테스트 할 방법이 없으므로 문제가 무엇인지 모릅니다. – adeneo

+0

이 작품! 그것은 내 문제를 해결했다. 나는 그 일이 hide() 함수라고 생각한다. 죄송합니다. 이것은 작동하지 않았지만 처음에는 잘못 복사했습니다. –