从样式元素中防止jquery mobile

时间:2011-09-02 04:48:10

标签: jquery-mobile

我有一个隐藏在页面上的复选框。我明显的第一次尝试是:

<input type='checkbox' style='display:none' />

但是,我注意到jquery mobile会自动将复选框包装在一个看起来像这样的div中:

<div class='ui-checkbox'>
  <input type='checkbox' style='display:none;' />
</div>

我认为某种data-元素会阻止这种额外的样式,但是在文档或其他地方没有找到它。很容易覆盖css中的.ui-checkbox以隐藏它,但更喜欢更加jquery移动标准方法。这样的事情存在吗?

3 个答案:

答案 0 :(得分:60)

阻止样式设置的属性为data-role="none"

<input type='checkbox' style='display:none' data-role="none" />

请参阅Jquery doc:“阻止表单元素的自动初始化”

答案 1 :(得分:8)

对于未来的用户。

万一你要为每个表单元素禁用或者你的表单是动态加载的,你不能编辑标记使用它。

        $(document).on('pagebeforecreate', function( e ) {
            $( "input, textarea, select", e.target ).attr( "data-role", "none" );
        });

答案 2 :(得分:1)

我有太多地方需要更改输入并添加data-role =“none” 以下代码适用于我:

 <script>
        $(document).bind('mobileinit',function(){
            $.mobile.page.prototype.options.keepNative = "select,input";
        });        
    </script>
    <script src="http://code.jquery.com/mobile/1.4.2/jquery.mobile-1.4.2.min.js"></script>
相关问题