问题描述
我希望基于重力形式的数字字段有条件地显示div。数字字段会根据复选框字段中检查的项目数而变化。当您选中任何一个复选框时,数字字段将返回“ 1”,如果您选择任意两个,则它将返回“ 2”,以此类推(请参见this video进行演示)
在测试中,我发现我可以毫无问题地获得number字段的值,但是由于某种原因,我的IF语句无法正常工作,并且无法缩小问题的范围...应该怎么办在此示例中,仅当数字字段返回“ 2”时,内容才应消失。
这是重力形式为数字字段生成的HTML:
<div class="ginput_container ginput_container_number">
<input name="input_5" id="input_13_5" type="text" value="" class="medium" tabindex="5" readonly="readonly" aria-invalid="false">
</div>
<div class="conditional-div">
Content to hide if total field value is equal to 2
</div>
这是我正在使用的jQuery:
jQuery(function ($) {
var total = $(':input[name=input_5]');
var total_value = total.val();
if (total_value === "2")
jQuery(".conditional-div").hide();
else
jQuery(".conditional-div").show();
});
任何对此的帮助将不胜感激!我非常喜欢CSS,HTML和PHP,但是jQuery不是我的强项。 ?
解决方法
HUZZAH!??? 经过更多测试后,我发现了!
问题不在于我的IF语句,是因为没有任何将更改注册到触发IF语句的字段中。另外,我显然不需要在那里的额外变量。无论如何,这是可行的:
jQuery(function ($) {
var total = $(':input[name=input_5]');
total.change(function() {
if (total.val() === "2")
jQuery(".conditional-div").hide();
else
jQuery(".conditional-div").show();
});
});