2014-10-31 4 views
3

Я использую загрузчик и bootbox плагин, и у меня есть этот кодЗапретить отображение содержимого вкладки в бутстрапе 3?

Вот ссылка на плагин http://bootboxjs.com/#download

Я показываю вкладку NEX с атрибутом данных, то, что мне нужно, когда пользователь нажимает на второй, чтобы отобразить bootbox и предотвратить вторую вкладку, чтобы показать, не проверена ли кнопка проверки?

HTML

<div class="tab-content"> 

    <div class="tab-pane fade in active" id="step-1"> 
     <p>First</p> 
     <p><input type="checkbox" name="user" value="user">I am not robot</p> 
    </div> 
    <div class="tab-pane fade" id="step-2"> 
     <p>Second</p> 
    </div> 

</div> 


<a class="pull-left" data-toggle="tab" href="#step-1">First</a> 
<a class="pull-right" data-toggle="tab" href="#step-2">Second</a> 

JS

$("a").click(function() { 

    bootbox.alert("Please check!", function() { 
     event.preventDefault(); 
    }); 

}); 

Здесь работает скрипку http://jsfiddle.net/08997uok/1/

Я нашел событие

$(document).on('shown.bs.tab', 'a[data-toggle="tab"]', function (e) { 
    bootbox.alert("Please check!", function() { 
     event.preventDefault(); 
    }); 
}) 

Но проблема в том, как предотвратить?

Это решение?

$('[data-toggle="tab"]').click(function(event) { 
    if(!$('[name="user"]').is(':checked') && $(event.target).attr('data-toggle') == 'tab'){ 
    event.preventDefault(); 
     bootbox.alert("Please check!", function() { 
    }); 
    return false; 
    } 
}); 

ответ

4

Я не получаю то, что именно вы хотите, но если вы хотите, чтобы проверить, является ли галочка в момент выбора вкладки второй и, если он не установлен вы не хотите, чтобы показать второй содержимое вкладки, а также предупреждение, вы можете сделать следующее.

$('[data-toggle="tab"]').click(function(event) { 
    if(!$('[name="user"]').is(':checked') && $(event.target).attr('href') == '#step-2'){ 
    event.preventDefault(); 
    return false; 
    } 
    bootbox.alert("Hello world!", function() { 

    }); 

}); 
+0

Да, но я хочу показать предупреждение, если не проверять и не показывать вторую вкладку, но здесь # step-2 жестко запрограммирован, что, если у меня есть несколько вкладок и на каждой вкладке у меня есть чек? –

+0

Я принял решение, основанное на вашем ответе, txanks –