x-editable-自动启动多个选择元素
x-editable - automatically initiate multiple select elements
我的页面包含多个数据类型为"select"的x可编辑元素:
<a href="#" data-type="select" data-name="services_0" data-url="/customer/editfield" data-pk="1028" id="services_0">True</a>
<a href="#" data-type="select" data-name="services_1" data-url="/customer/editfield" data-pk="1028" id="services_1">False</a>
我正试图用以下javascript代码用x-editable启动它们:
var services = ['services_0', 'services_1'];
$.each(services, function(index, value) {
$('#' + value).editable({
prepend: 'Select one',
source: [
{
value: 1,
text: 'True'
},
{
value: 0,
text: 'False'
}
],
display: function(value, sourceData) {
var colors = {
1: "green",
0: "blue"
},
elem = $.grep(sourceData, function(o) {
return o.value == value;
});
if (elem.length) {
$(this).text(elem[0].text).css("color", colors[value]);
} else {
$(this).empty();
}
}
});
});
问题是它只绑定第一个元素。
检查页面源时,我发现查询$.grep在e.length()上给了我一个TypeError。它触发了此行的"value":
display: function(value, sourceData) {
一旦我将data value="添加到元素中,一切都按预期进行:
<a href="#" data-value="" data-type="select" data-name="services_0" data-url="/customer/editfield" data-pk="1028" id="services_0">True</a>
<a href="#" data-value="" data-type="select" data-name="services_1" data-url="/customer/editfield" data-pk="1028" id="services_1">False</a>
相关文章:
- WebdriverIO waitForExist()选择元素's选定的选项
- 如何选择元素的第n个子元素
- Angular没有根据模型更新我的选择元素
- jquery使用name from变量按类选择元素
- 如何使用jQuery按数据日期属性选择元素
- 向html选择元素添加选项
- 使用Jquery在相同类型的元素中选择元素
- 他们是如何使用angular/jqLite find()方法按属性名称和值选择元素的?ng conf 2015
- 如何在Angular中清除选择元素中的过滤器
- 使用其中一个元素作为参考点,从Javascript数组中选择元素
- Javascript选择元素到字符串的比较
- Angular始终选择选择元素中的第一个选项
- 使用 jquery .find() 遍历按类和存储属性选择元素
- 通过 id json, jquery 选择元素
- 如何基于另一个已经存在的选择器选择元素
- 禁用多个选择元素中的非“选定”选项,但使用 jquery 的一个除外
- HTML 选择元素的只读等效项
- 在iPad上,如何通过Javascript事件在选择元素上设置focus()而不显示选项
- 单击事件似乎不适用于 IE 中的选择元素
- Angular js,在选择元素上,我想 POST 数据以将其保存在数据库中,然后我想使用 PUT 更新它而无需重新加载