jQuery Mobile - 禁用单击可折叠标题

时间:2012-10-24 20:16:26

标签: jquery jquery-mobile

我希望能够在一个集合中禁用打开/关闭collapsible,而用户将单击open元素内部的继续按钮,该按钮将执行验证,然后在准备好时打开下一个元素。我基本上使用可折叠集作为向导。我一直在搜索文档并找到了崩溃发生时我可以捕获事件的地方,但我找不到如何取消它。任何建议,或其他向导类型控件的建议,我会谈论我会很感激!

2 个答案:

答案 0 :(得分:9)

经过一番研究后,我终于找到了答案。将它发布在这里希望它对任何试图将手风琴变成巫师的人都有帮助。

我的可折叠设置如下:

 <div data-role="collapsible" data-collapsed="false" id="col1" >
     <h3>Title</h3>
     <p>
         <input type="text" />
         <input type="button" value="Next" onclick="nextClicked(1);" />
     </p>
 </div>

要停止点击工作但保持能够触发展开我使用此jquery:

$(document).ready(function () {
    $("#col1 h3 a").click(function (event) {
        return false;
    });
});

我曾尝试使用preventDefault和stopPropagation,但这些都没有。显然返回false会做一些额外的工作以及那两个。

编辑:我发现这可以在浏览器中使用,但不会阻止它在移动设备上,为了防止它在移动设备上你还必须捕获点击事件,但要小心,你必须在标题上做而不是整个可折叠或可折叠的任何元素,如按钮也不会注册。这是我使用的代码:

$("#col1 h3").on("tap", function (event, ui) {
    return false;
});

答案 1 :(得分:6)

更改

<div data-role="collapsible">

<div data-role="collapsible" class="ui-disabled">

以图形方式和功能方式为我禁用标题。

请参阅http://jsfiddle.net/NY63z/