作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用优秀的jEditable用于在我的页面上进行一些就地编辑的插件。有一个地方我需要一个多选元素。有没有 jEditable 插件可以让我做到这一点?
我一直在尝试使用 jEditable作者的插件 API 来创建我自己的多选插件,但到目前为止还没有骰子。关于 API 中每个函数的作用似乎没有足够的文档。他提供的每个示例插件似乎都依赖于其他 jQuery 插件。我只需要一个基本的多选元素...
最佳答案
我对 Kalyan 的建议做了一个小补丁,导致它在没有可选的“selected”选项的情况下无法工作,并对大小属性进行了硬编码。然后我将其修改为 jEditable 插件,而不是必须粘贴到 jEditable 本身中的东西。我目前正在客户网站上使用它,尽管我只使用它由 json 字符串填充,因此其他方法可能仍然存在错误。
$.editable.addInputType("multiselect", {
element: function (settings, original) {
var select = $('<select multiple="multiple" />');
if (settings.width != 'none') { select.width(settings.width); }
if (settings.size) { select.attr('size', settings.size); }
$(this).append(select);
return (select);
},
content: function (data, settings, original) {
/* If it is string assume it is json. */
if (String == data.constructor) {
eval('var json = ' + data);
} else {
/* Otherwise assume it is a hash already. */
var json = data;
}
for (var key in json) {
if (!json.hasOwnProperty(key)) {
continue;
}
if ('selected' == key) {
continue;
}
var option = $('<option />').val(key).append(json[key]);
$('select', this).append(option);
}
if ($(this).val() == json['selected'] ||
$(this).html() == $.trim(original.revert)) {
$(this).attr('selected', 'selected');
}
/* Loop option again to set selected. IE needed this... */
$('select', this).children().each(function () {
if (json.selected) {
var option = $(this);
$.each(json.selected, function (index, value) {
if (option.val() == value) {
option.attr('selected', 'selected');
}
});
} else {
if (original.revert.indexOf($(this).html()) != -1)
$(this).attr('selected', 'selected');
}
});
}
});
关于jquery - 有 jQuery jEditable 多选插件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1597756/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!