好的......我会尝试简化这个例子。我所拥有的是一个带有一些动态创建的复选框的表单。此表单将用于插入新记录以及编辑现有记录。我想要做的是有一个脚本来检查页面加载时的复选框。如果它们是零复选框,那么具有该按钮的div将被隐藏。用户选中复选框后,将显示该按钮。这是我的代码。
的jQuery
if ($(".uniForm input:checkbox:checked").length > 0) {
$(".buttonHolder").show(); // any one is checked
} else {
$(".buttonHolder").hide(); // none is checked
}
Coldfusion / HTML
<cfform ACTION="about:blank" name="formSend" class="uniForm">
<cfset i = 1>
<cfloop query="qRooms">
<cfif variables.active is 1>
<input type="checkbox" id="checkbox_#i#" name="app_#ApplianceTypeID#_chk" style="width:50px" checked>
<cfelse>
<input type="checkbox" id="checkbox_#i#" name="app_#ApplianceTypeID#_chk" style="width:50px">
</cfif>
</cfloop>
</cfform>
<div class="buttonHolder" id="buttonfield">
<button type="submit" class="secondaryAction" onClick="window.location='index-10.cfm'; return false;">Cancel and go back</button>
<button type="submit" class="primaryAction">Submit</button>
</div>
我认为我很接近......在.change事件上有点困惑。
答案 0 :(得分:3)
请改为尝试:
if($('.uniform').find('input:checked').length > 0)
find()
速度更快且:checkbox
不是工作选择器(或者我不是这个选择器),我认为你的意思是input[type=checkbox]:checked
,但在你的场景中,它不是需要,因为你没有单选按钮(唯一的其他输入可以是:checked
)。
希望它有所帮助!
答案 1 :(得分:0)
.change()
事件更多地用于获取slider
,radio
按钮或<select>
标记的实际值,并且jQuery
必须使用.class
{ {1}}按类选择元素,或#id
按ID选择