я люблю этот плагин, но действительность - то, что большинство людей не поймет сначала, что они могут нажать на текст для редактирования.
Идеально, было бы хорошо добавить Кнопку рядом с текстом или простым [Редактирование] ссылка, которую пользователь ясно видит, но никогда не отправляется через ajax.
Какие-либо идеи?
Просто добавьте событие к кнопке, которая щелкает на поле jEditable:
<span class="jeditable">jEditable field</span>
<input type="button" class="jeditable-activate" value="Edit me!" />
И в jQuery:
$('.jeditable-activate').click(function() {
$(this).prev().click();
});
Это должно сделать это. В конце концов, это то же самое, что и нажатие на элемент.
.Комментарий Sam3k полезен, но не идеален. Это приводит к тому, что кнопка редактирования повторно отображается перед тем, как скрыть редактируемое поле / кнопки. Чтобы решить эту проблему, я вместо этого добавил настраиваемое событие onCancel.
Сначала я добавил значение по умолчанию в $. Fn.editable.defaults для нового события (т.е. onCancel: {})
Затем я добавил следующий код в 2 места в jquery.jeditable.js : (1) при нажатии на escape и (2) при нажатии кнопки отмены.
if ($.isFunction(settings.oncancel)) { settings.oncancel.apply(self); }
Вот и все.
$("#emailRow span").editable(url, {
type: 'text',
cancel: 'Cancel',
submit: 'OK',
onCancel: function() {
$("#emailEditLink").show();
}
});