У меня возникли проблемы с JQuery размытия() функции Это код:редактируемые ввод текста с размытия() JQuery
<a class="quick_edit_title" s="1" u="/administrator/user-group/index/edit/1">Admin</a>
<a class="quick_edit_title" s="1" u="/administrator/user-group/index/edit/2">User</a>
<a class="quick_edit_title" s="1" u="/administrator/user-group/index/edit/3">Mod</a>
Я использую Jquery Ajax с Editable элемента при использовании мыши
$(document).ready(function() {
$('.quick_edit_title').each(function() {
$(this).click(function() {
var url = $(this).attr('u');
var status = $(this).attr('s');
var title = $(this).html();
var old_element = this;
var input = $("<input type='text' size='45' value='" + title.replace(/'/gi, "\\'") + "' class='input_quick_edit'/>");
//$(this).replaceWith(input).blur(function() {
//alert(this.value);
//});
});
});
});
Когда я нажимаю editable <a>
. Элемент <input/>
добавлен, но когда я использую функцию blur()
jquery, я не могу получить value
элемента <input/>
и вернуться к элементу <a>
при размытии.
Я думаю, вам нужно переключить свое заявление о размытии (в ваших комментариях). Вам нужно сделать что-то вроде '$ (this) .blur (function() {$ (this) .html (input);)}' – ntgCleaner
(не ответ) Использование пользовательских атрибутов, кроме data- *, неверно в HTML5. Вы должны использовать 'data-status' вместо' s' как имя атрибута. То же самое для 'u' ->' data-url'. Затем они также могут быть восстановлены с помощью 'var url = $ (this) .data ('status');'. –