Подтвердить что ты не робот

Предотвращать использование jquery mobile из стилистического элемента

У меня есть флажок, который я хочу скрывать на странице. Моя очевидная первая попытка заключалась в следующем:

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

Однако я заметил, что jquery mobile автоматически упаковывает флажок в div, который выглядит следующим образом:

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

Я бы предположил, что существует какой-то элемент data-, который помешает этому дополнительному стилю, но не нашел его в документах или в других местах. Достаточно легко переопределить .ui-checkbox в css, чтобы скрыть его, но предпочла бы более удобный подход к мобильному стандарту jquery. Существует ли такая вещь?

4b9b3361

Ответ 1

Атрибут, который предотвращает стилирование, data-role="none"

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

См. JQuery doc: "Предотвращение автоматической инициализации элементов формы"

Ответ 2

Для будущих пользователей.

На всякий случай, если вы хотите отключить для каждого элемента формы, или ваши формы загружаются динамически, где вы не можете редактировать разметку, используйте это.

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

Ответ 3

У меня слишком много мест для изменения входных данных и добавления 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>