Я использую jQuery UI сортируемое взаимодействие и Jeditable . Идея заключается в том, что пользователь может изменять порядок элементов и влиять на содержимое этих элементов. Я столкнулся с тем, что событие onblur
, которое у меня есть настройка Jeditable для прослушивания, проглатывается сортируемым слушателем jQuery.
Пользователь может щелкнуть элемент Jeditable, и этот элемент станет редактируемым, но когда он щелкнет, если щелкнет li
, который можно отсортировать, событие onblur будет проигнорировано. Событие не игнорируется, если они щелкают за пределами li
. Как я могу сообщить Jeditable о событии размытия, когда они щелкают внутри li
?
Вот jsFiddle, иллюстрирующий проблему
HTML-разметка
-
TEXT!
-
Some text
Jeditable
$('.editable-element').editable('http://jsfiddle.net/echo/jsonp/', {
onblur: 'submit',
width: 250,
indicator: 'Saving...'
});
jQuery UI Sortable
$(".elementlist").sortable({
update: function(event, ui) {
var elementSerialized = $(this).sortable('serialize');
$.post('http://jsfiddle.net/echo/jsonp/', {
elementSk: $(this).sortable('serialize')
});
}
});
Edit: В попытке прояснить, что происходит, позвольте мне дать пошаговое руководство, сопровождаемое скриншотами.
Некоторый текст
li
, содержащий ТЕКСТ!
ТЕКСТ!
На данный момент я ничего не заказывал. Нажатие на li
и отпускание не вызвало onblur
для Jeditable. Я хотел бы, чтобы простое нажатие кнопки вызвало размытие.Если я не подключаю сортировку, вот как это работает. Я должен верить, что каким-то образом щелчок по li
проглатывается sortable.
Вот еще один пример с изменением порядка, но без размытия
.
Некоторый текст
li
, содержащий ТЕКСТ!
ТЕКСТ!
ниже Некоторый текст
ТЕКСТ!
После изменения порядка элементов и выпуска li
, содержащего TEXT!
onblur
не захватывается. Элементы расположены в новом порядке, но Некоторый текст
все еще доступен для редактирования.
Все, что здесь сказано, это то, что я ожидал увидеть:
Нажатие на что-либо за пределами редактируемого поля должно привести к срабатыванию onblur
Jeditable. Именно это и происходит, если сортировка jQuery не подключена. Когда сортировка jQuery подключена, чтобы вызвать поведение onblur
, мне приходится щелкать за пределами элементов сортируемого списка.