我正在使用最新版本的jquery mobile,我的问题是我给了一个提交按钮ID,然后添加了一些css来设置要显示的ID:none;
出于某种原因,这不起作用。
以前有没有人遇到这个问题?
答案 0 :(得分:23)
在没有任何代码的情况下很难说你要做什么,但我认为问题源于jQuery Mobile没有设置现有按钮的样式,而是隐藏元素并将其包装在新的{{{ 1}}被设计为外观和行为就像一个按钮。
按钮的当前jQuery Mobile标记如下所示:
div
所以你要找到与班级<div data-theme="e" class="ui-btn ui-btn-inline ui-btn-corner-all ui-shadow ui-btn-hover-e ui-btn-down-e" aria-disabled="false">
<span class="ui-btn-inner ui-btn-corner-all">
<span class="ui-btn-text">Submit</span>
</span>
<input type="submit" id="submit_btn" value="Submit" data-theme="e" data-inline="true" class="ui-btn-hidden" aria-disabled="false">
</div>
最近的祖先并隐藏它:
ui-btn
如果有更好的方法可以做到这一点,我很乐意了解它。这是一个显示我的解决方案的fiddle。
答案 1 :(得分:21)
我总是使用:
$("#<button-id>").parent().hide();
似乎工作正常,因为按钮或输入元素将始终是'wrapper'div的子元素。
答案 2 :(得分:11)
在我需要在州之间切换的情况下,我对上述答案有疑问。
我发现最简单的方法是将初始按钮包装在div中,然后隐藏/显示它。
意义:
<div id="someid">
<input type="button" class="submit_button" id="resend_invoice" value="Button"/>
</div>
然后简单地解决包含div会像往常一样工作,因为所有jQuery移动div和类都是在包含div中创建的。
答案 3 :(得分:4)
如果你将data-role="none"
添加到你的输入元素,那么jQuery mobile将不会绘制额外的按钮。