2016-04-10 15 views
1

navbarPage'de tabPanel eklemeye çalışıyorum, böylece tıklattığınızda yeni bir sekme yerine kalıcı bir pencere açılır. TabPanel'in bir id parametresi olmadığı için aşağıdaki kod parçacığı geçerli değil. Ben tarayıcıdan oluşturulan HTML kodu düzenlersenizR Parlak: bsModal ile navbarPage öğesini brightBS ile kullanın

library(shiny) 
library(shinyBS) 
shinyUI(fluidPage(
    navbarPage("Sample App", id = "main_menu", 
     tabPanel("Open Modal", id = "moda")), 
    bsModal("modal1", "Example", "moda", p("This is a modal")) 
) 

, ben <li> elemana

<a href="#" data-toggle="modal" data-target="#modal1">Open Modal</a> 

çizgiyi

<a href="#tab-9741-5" data-toggle="tab" data-value="Open Modal">Open Modal</a> 

değiştirerek bunu mümkün yapabilirsiniz.

Bunu nasıl yapacağınıza veya en azından nasıl oluşturulduğuna dair bir ipucu, oluşturulan html'yi nasıl parlak bir şekilde geçersiz kılabilir?

+0

TabPanel'i gerçekten kullanmadığınız için neden bir bağlantı kullanmıyorsunuz? CSS kullanarak (sadece bir sekme başlığının CSS stilini kontrol edin ve bağlantınız için de aynısını kullanın) bir sekme gibi şekillendirebilirsiniz. –

+0

tabPanel'in aslında işe yaramaz olduğunu biliyorum ama nasıl emin olamıyorum yalnızca tabPanel nesnelerine izin verdiğinden, navbarPage içindeki bir bağlantıyı kullanın. – billiout

cevap

2

Sekme başlığının özniteliğini yeniden yazmak için bir çözüm Javascript kullanmaktır. Aşağıdaki JS kodu sekme başlığı bağlantısını bulur ve özelliklerini yeniden yazar.

+0

Çok teşekkür ederim, mükemmel çalışıyor! – billiout