На этом шаге мы рассмотрим основные свойства и события этого виджета.
Материал этого шага базируется на http://it-route.ru/jeditable_manual_ru/.
Можно получить полный контроль над Ajax-запросами. Для этого нужно заменить url на функцию. Остальные параметры остаются без изменений.
$('.editable').editable(function(value, settings) {
console.log(this);
console.log(value);
console.log(settings);
return(value);
}, {
type : 'textarea',
submit : 'OK',
});
Стоит отметить, что функция должна возвращать строку. Обычно это отредактированный текст. Он будет показан на странице после окончания редактирования.
Перечислим некоторые параметры, которые используются у этого виджета.
$('.editable').editable('http://www.example.com/save.php', {
type : 'textarea',
submit : 'OK',
callback : function(value, settings) {
console.log(this);
console.log(value);
console.log(settings);
}
});
$('.editable').editable('http:www.example.com/save.php', {
name : 'new_value'
});
$('.editable').editable('http://www.example.com/save.php', {
id : 'element_id'
});
$(".editable").editable("http://www.example.com/save.php", {
submitdata : {foo: "bar"};
});
$(".editable").editable("http://www.example.com/save.php", {
submitdata : function(value, settings) {
return {foo: "bar"};
}
});
$(".editable").editable("http://www.example.com/save.php", {
loadurl : "http://www.example.com/load.php"
});
http://www.example.com/load.php?id=element_id
$(".editable").editable("http://www.example.com/save.php", {
loaddata : {foo: "bar"};
});
$(".editable").editable("http://www.example.com/save.php", {
loaddata : function(value, settings) {
return {foo: "bar"};
}
});
$(".editable").editable("http://www.example.com/save.php", {
data : "Lorem ipsum";
});
$(".editable").editable("http://www.example.com/save.php", {
data: function(value, settings) {
// Convert <br> to newline.
var retval = value.replace(/<br[\s\/]?>/gi, '\n');
return retval;
}
});
По умолчанию, когда пользователь щелкает за пределами редактируемой области, все изменения отменяются. Вы можете управлять этим, устанавливая параметр onblur. Возможные значения:
Событие, после которого начинается редактирование может быть определено в опции event. Все события из jQuery поддерживаются. Наиболее часто используемые - click и dblclick.
На следующем шаге мы рассмотрим расширение Masked Input.