2016-08-11 106 views
0

我有一个页面,它使用jEditable,我想动态加载选择列表(取决于当前元素)的选项。jeditable动态选择选项

我有以下的例子中拨弄: http://jsfiddle.net/mbv401920150/2rdco6qL/1/

$(document).ready(function() { 
    $('.edit').editable(function(value, settings) { 
     console.log(this); 
     console.log(value); 
     console.log(settings); 
     return(value); 
    }, { 
     data : " {'E':'E','F':'F','G':'G', 'selected':'F'}", // <---- I WANT TO CHANGE THIS CODE 
     // ****************************************** 
     // DYNAMIC LOAD - DEPENDING OF THE ELEMENT ID 
     // ****************************************** 
     // data : function(currentElement) { 
     //   if(currentElement.id == "A") return " { '1':'1', '2':'2', '3':'3' }"; 
     //  else return " { 'A':'A', 'B':'B', 'C':'C' }"; 
     // } 
     type : 'select', 
     onblur: 'submit' 
    });         
}); 

我想检索取决于元素的特定选项列表。 这可能吗?

回答

0

我想出了如何完成这项任务,我为每个元素添加了一个额外的类。

这里是一个完整的解决方案: http://jsfiddle.net/mbv401920150/2rdco6qL/3/

$(document).ready(function() { 
    $('.letter, .number').each(function(i, e) { 
    $(e).editable(function(value, settings) { 
     console.log(this); 
     console.log(value); 
     console.log(settings); 
     return (value); 
    }, { 
     data: ($(e).hasClass('letter') ? 
     " { 'A':'A', 'B':'B', 'C':'C' }" : 
     " { '1':'1', '2':'2', '3':'3' }"), 
     type: 'select', 
     onblur: 'submit' 
    }); 
    }); 
}); 

如果是动态生成(在鼠标悬停,上点击); jEditable初始化后,我删除了辅助类。