2013-01-17 40 views
0

说我有一个表格:隐藏提交按钮内部 '形横' 的形式

<form action="/orders/add" class="form-horizontal" id="OrderAddForm" method="post"> 
    <div style="display:none;"><input type="hidden" name="_method" value="POST"></div>   

    <div class="control-group"> 
     <button type="button" class="btn" id="new-order-line">New order line</button> 
    </div> 

    <div class="control-group"> 
     <input class="btn my-hidden" type="submit" value="Save Orderr">  
    </div> 
</form> 

而且我的CSS:

.my-hidden { 
    display: none; 
} 

而我的JS:

$(function() { 
    $('#new-order-line').click(function() { 
    $('.my-hidden').show('slow'); 
    }); 
}); 

所以我想要点击“新订单行”按钮时显示“保存订单”按钮,但似乎Twitter Bootstrap会覆盖我的“我的隐藏”类,因为在“表单”元素的内部,我的“保存订单”按钮始终显示。 我读过一些人有the same problem

一些解决方法来隐藏我的按钮?

+0

你有JS中的错字。 '('。my-hidden')。show('slow');'vs'$('。my-hidden')。show('show');' – cimmanon

+0

@cimmanon'show('show')' ?我认为'show('slow')'可以。 –

+0

是的,@enrmarc关于'show('slow')是正确的' –

回答

1

我不认为这是一个问题本身。使用Twitter Bootstrap CSS规则可能不会(很容易)完成,但如果问题在于Twitter Bootstrap覆盖了您想要执行的操作,则始终可以使用更高的specificity创建自己的规则。

一种简单的方法是将属性style="display: none;"添加到属性中,因为内联样式会自动享受最高特异性。

给你的班级更高的特异性的一种方法是详细说明选择一点。例如,这比你的例子更高的特异性,但我不知道它是否够:

.form-horizontal .control-group .my-hidden { display: none; } 

(我希望我理解正确的话您的问题...如果不是苛责我;)

+0

谢谢。是的,你已经理解了这个问题。我在Twitter Bootstrap的问题列表中阅读了这个问题,我认为这仍然不起作用。我会尝试禁用按钮,而不是显示它。 –

+0

很好,你研究它足够彻底,你发现线程。我现在读它,是的,这听起来像你遇到的问题。但它应该从2.1.0开始被修正,现在在2.2.2版本,所以如果你使用最新版本,你不应该有这个问题。此外,结核病只不过是一套CSS规则,就像我说的那样,您可以总是创建更高特异性的新规则,来覆盖TB所做的任何事情。所以如果你只是给予你的规则足够高的特异性,总是可以隐藏一些东西。 –