我正在使用重力形式来显示一些选项并隐藏其他选项。我的html结构如下
def accounts_get_balance(address):
payload = {'address': address}
response = requests.get(constants.ACCOUNTS_GET_BALANCE,
params=payload,
timeout=constants.TIMEOUT
)
标识为<li id="field_7_186" class="gfield gfield_price gfield_price_7_176 gfield_option_7_176 field_sublabel_below field_description_below gfield_visibility_visible"><label class="gfield_label">Additional Services</label><div class="ginput_container ginput_container_checkbox"><ul class="gfield_checkbox" id="input_7_186"><li class="gchoice_7_186_1">
<input name="input_186.1" type="checkbox" onclick="gf_apply_rules(7,[99]);" onkeypress="gf_apply_rules(7,[99]);" value="Remote KVM|75" id="choice_7_186_1" tabindex="20">
<label for="choice_7_186_1" id="label_7_186_1" price=" +CHF 75.00">Remote KVM<span class="ginput_price"> +CHF 75.00</span></label>
</li></ul></div></li>
<li id="field_7_99" class="gfield gfield_html gfield_html_formatted gfield_no_follows_desc field_sublabel_below field_description_below gfield_visibility_visible" style="display: none;"><p class="monthly"> * Remote KVM Incurs setup fee of CHF 75 and no monthly fee</p></li>
的第二个li
处于field_7_99
状态。每当用户点击ID为display:none
的第一个复选框时,它就会显示第二个field_7_186
。我需要一个JQuery代码来检测&#34;实时&#34;如果显示第二个li
。我有以下代码,但它似乎没有效果。
li
有人能帮助我吗?感谢。
答案 0 :(得分:0)
我假设您正在对您无法控制的页面执行此操作,事实上,因为很明显,如果您控制页面,只需将您需要的任何逻辑放在{ {1}}通过gf_apply_rules
属性调用的处理程序。
只需勾选复选框,等待勾选,然后查看onclick
的状态:
li
为什么$("#field_7_186 input[type=checkbox]").on("click", function() {
setTimeout(function() {
if ($("#field_7_99").is(":visible")) {
// It's visible...
}
}, 0);
});
?因为不同的浏览器将处理现代事件处理程序,并且setTimeout
属性样式处理程序在时间方面有所不同。您需要确保代码在属性样式处理程序之后运行。