4

在我的html代码中:

<div data-role="fieldcontain" id="containdiv" class="no-field-separator">
    <label for="field1" class="ui-hidden-accessible">To</label>
    <input type="search" name="field1" id="field1" autocorrect="off" autocapitalize="off" autocomplete="off" placeholder="Field #1?" value="" />
    <input type="hidden" id="field1val" name="field1val"/>
</div>

在DOM中,经过jQUery mobile处理后,插入了以下元素

<span role="status" aria-live="polite" class="ui-helper-hidden-accessible"></span>

在我的搜索input和我的隐藏之间input

当用户输入我的搜索输入时,我会做一些事情,并用它来更新隐藏字段的值。

发生这种情况时,我注意到这个跨度(带有“ ui-helper-hidden-accessible”类)的内容使用隐藏输入的值进行了更新。

我不确定发生了什么,或者这是由什么触发的。

调查,我发现:http: //forum.jquery.com/topic/ui-helper-hidden-accessible-change

该字段的目的实际上是使其“隐藏但仍可访问”,但是,情况似乎并非如此 - 它在浏览器中呈现为可见。

有没有办法禁止 jQuery 在我的表单中创建这个元素?

4

4 回答 4

8

隐藏焦点类:

$( ".selector" ).autocomplete({
focus: function (event, ui) {
                $(".ui-helper-hidden-accessible").hide();
                event.preventDefault();
            }
});
于 2013-07-29T09:36:38.493 回答
7

你可以试试这个。

.ui-helper-hidden-accessible { display:none; }
于 2013-04-09T06:05:16.323 回答
1

不确定您是否可以禁用 jQuery Mobile 正在执行的操作,但如果我了解您的需求,您是否尝试过类似隐藏元素的操作?

$(".ui-helper-hidden-accessible").hide();

希望这可以帮助。

于 2013-01-13T03:04:43.867 回答
1

试试这个 :

$(".ui-helper-hidden-accessible").remove();
于 2018-11-01T15:53:50.700 回答