$("body").on("change", "input[type='checkbox'],input[type=radio]", function(event){
$("input[type='checkbox']").on('change',function() {
var that = this;
if (!$(this).parent().hasClass("remember-label")){
$(this).parent().css("background-color", function() {
return that.checked ? "#C0E9F7" : "";
});
}
});
$("input[type=radio]").on('click',function() {
$(this).parents().eq(1).siblings().css("backgroundColor","");
$(this).parents().eq(1).css("backgroundColor","#C0E9F7");
});
});
虽然我认为这应该可行,但它仅适用于单选按钮。由于每次内容动态变化时我都必须放置两个选择器,因为有时单选按钮被添加到DOM以及其他一些时间复选框。
问题是输入的点击区域变得无法点击,除非您明确单击复选框或单选按钮而不是覆盖整个区域的标签。
这里是html(它有导轨,但你可以理解结构)
<label for="choice_<%= choice.id %>">
<%= radio_button_tag("choice","#{choice.id}",false,class:"radio big-radio") %>
<% if choice.image? %>
<%= image_tag rewrite_url(choice.image_url(:resized)), class:"choice-image" %>
<% else %>
<%= choice.description %>
<% end %>
</label>
代码用于单选按钮,但同样适用于复选框。
答案 0 :(得分:0)
为什么你需要在事件处理程序中使用事件处理程序..只需你可以像这样使用它
SELECT d.name databasename,
r.command,
r.percent_complete,
r.session_id,
r.start_time,
estimated_finish_time = DATEADD(MILLISECOND,estimated_completion_time, CURRENT_TIMESTAMP) FROM sys.dm_exec_requests r INNER JOIN sys.databases d ON r.database_id = d.database_id WHERE r.command like '%BULK INSERT%'
注意:请确保包含jquery
答案 1 :(得分:0)
你应该只绑定一次:
$("body").on("change", "input[type='checkbox'],input[type=radio]", function(event){
// here you can check if this is check box or radio
if($(this).is(":checkbox")) {
// do this
}else{
// do for radios
}
});