点击元素后,x-editable会创建一个input
元素。在验证回调中,我如何访问该元素?每次将插件应用于元素时,我都可以通过使用inputclass
分配一个唯一的类来实现,但是,这提供了很小的灵活性。在回调中,this
引用原始元素,而不是input
元素。
https://jsfiddle.net/cgym6m3v/1/
<p>Name</p><a href="javascript:void(0)" id="name"></a>
$('#name').editable({
type: 'text',
title: 'Name',
url: '/echo/json/',
pk: 123,
validate: function (value) {
console.log(this,value);
}
});
答案 0 :(得分:0)
我不认为这是最干净的解决方案,但它会起作用。也许根本没有一个干净的解决方案......
$('.bla').editable({
inputclass: function(e, f) {
$("a[aria-describedby=" + $(this).closest(".ui-tooltip").prop("id") + "]").data("shared", this);
},
validate: function (value) {
console.log("validate", $(this).data("shared"));
}
});