2014-01-08 5 views
0

장바구니 항목의 목록보기가 있습니다. 사용자가 마우스를 올리면 양을 늘리거나 줄이거 나 팝 업 안의 각 항목을 클릭 할 수 있습니다. 아래의 코드를 작성했지만 popover 내부의 + 또는 - 기호 안쪽을 클릭하면 popover가 숨 깁니다. 이와 관련하여 도움이 될뿐 아니라 CSS를 사용자 정의하는 데 도움이되는 포인터를 사용하면 하드 코드를 사용하지 않고 일반화 할 수있어 매우 감사하게 생각하고 도움이됩니다. 부트 스트랩-3.0.3 및 JQuery와-1.9.1부트 스트랩 Popover 변경 수량

$(document).on('click', '.cart-side-view-item-list', function(e) { 
    var item_id=$(this).attr('id'); 
    items_data = window.items_data; 
    items_list = items_data.items_list; 
    var div_content; 
    for(var itm_id in items_list) 
    { 
     temp_id = "cart-side-view-item-" + itm_id 
     if (temp_id === item_id) 
     { 
      div_content = '<div class="sp-quantity"> \ 
          ' + items_list[itm_id].item + ' \ 
          <div class="sp-plus fff"> \ 
          <a class="ddd" href="#" data-multi="1"> \ 
          <i class="glyphicon glyphicon-plus-sign"></i></a></div> \ 
          <div class="sp-input"> \ 
           <input type="text" class="item-quantity" value="'+ items_list[itm_id].quantity +'" /> \ 
          </div> \ 
          <div class="sp-minus fff"> \ 
          <a class="ddd" href="#" data-multi="-1"> \ 
          <i class="glyphicon glyphicon-minus-sign"></i></a></div> \ 
          </div>'; 
     } 

    } 

    editQuantity = function() { 
     var $button = $(this); 
    var $input = $button.closest('.sp-quantity').find("input.item-quantity"); 
    $input.val(function(i, value) { 
     return +value + (1 * +$button.data('multi')); 
    }); 

    }; 

    var $btn2 = $('#'+item_id); 

    $btn2.popover({trigger: 'mannual', 'placement':'left', content: div_content, html:true}) 
     .on('click', (function (e) { 
      var pop_data = $(this).data('popover').tip(); 
      $(pop_data).find('.sp-quantity').on('click', editQuantity); 
     })) 
     .popover('show'); 
}); 
+0

"mannual"의 맞춤법 오류로 인해 내 코드베이스에서 4 시간 동안 모든 코드가 손상되었습니다. ( – Raja

답변

0

를 사용하면 발생하는 코드에서 seplling 실수가 있었다

$btn2.popover({ 
    trigger: 'mannual', 
    'placement': 'left', 
    content: div_content, 
    html: true 
}) 
    .on('click', (function (e) { 
     var pop_data = $(this).data('popover').tip(); 
     $(pop_data).find('.sp-quantity').on('click', editQuantity); 

     e.preventDefault(); 
     e.stopPropagation(); 
     return false; 

    })) 
    .popover('show'); 
+0

) 작동하지 않았습니다. e.preventDefault() 및 e.stopPropogation()을 시도해 보았습니다. – Raja

0

의 클릭 이벤트 전파 중지에 의해 닫 팝 오버를 방지 할 수 있습니다 워크 플로는 예상대로 작동하지 않습니다. 미안해.

관련 문제