作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我熟悉使用“on”来确保我的 jquery 方法处于事件状态(因为我通过 Ajax 渲染页面)。
例如:
$('body').on( 'click', '#demobutton', function (event) {
alert("CliCKED!");
});
但是我需要对 jQuery Multiselect 执行相同的操作。以下仅在页面重新加载时有效。但是,如果我的内容是通过 Ajax 加载的,则 MultiSelect 根本不会呈现。
$("select").multiselect({
click: function(event, ui){
alert(ui.value + ' ' + (ui.checked ? 'checked' : 'unchecked') );
},
beforeopen: function(){
$callback.text("Select about to be opened...");
},
open: function(){
$callback.text("Select opened!");
},
beforeclose: function(){
$callback.text("Select about to be closed...");
},
close: function(){
$callback.text("Select closed!");
},
checkAll: function(){
$callback.text("Check all clicked!");
},
uncheckAll: function(){
$callback.text("Uncheck all clicked!");
},
optgrouptoggle: function(event, ui){
var values = $.map(ui.inputs, function(checkbox){
return checkbox.value;
}).join(", ");
alert("CheckboXES " + (ui.checked ? "checked" : "unchecked") + ": " + values);
}
});
所以问题是如何使用 $('body').on 等格式重写上面的内容?谢谢你的帮助。新人来了!
最佳答案
既然您指定了(但是,如果我的内容是通过 Ajax 加载的,则 MultiSelect 根本不会呈现。)
这里我使用ajax加载选择选项并绑定(bind)多选jsfiddle 。如果这对您有帮助,请告诉我。
$(document).ready(function(e) {
var form_data = $("#frm").serialize();
var form_url = $("#frm").attr("action");
var form_method = $("#frm").attr("method").toUpperCase();
$("#loadingimg").show();
$.ajax({
url: form_url,
type: form_method,
data: form_data,
cache: false,
success: function(returnhtml){
alert('binded options to select on ajax success');
$.when(assignOptions()).done(function(){
bind();
});
}
});
});
function assignOptions(){
$("#display_list").append('<option value="W1">VICccccc</option><option value="W2">NSW</option><option value="W6">TAS 3</option>');
}
function bind(){
$("select").multiselect({
click: function(event, ui){
alert(ui.value + ' ' + (ui.checked ? 'checked' : 'unchecked') );
},
beforeopen: function(){
$callback.text("Select about to be opened...");
},
open: function(){
$callback.text("Select opened!");
},
beforeclose: function(){
$callback.text("Select about to be closed...");
},
close: function(){
$callback.text("Select closed!");
},
checkAll: function(){
$callback.text("Check all clicked!");
},
uncheckAll: function(){
$callback.text("Uncheck all clicked!");
},
optgrouptoggle: function(event, ui){
var values = $.map(ui.inputs, function(checkbox){
return checkbox.value;
}).join(", ");
alert("CheckboXES " + (ui.checked ? "checked" : "unchecked") + ": " + values);
}
});
}
关于javascript - 使用 "on"的 jQuery 多选委托(delegate)事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23577327/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!