Как редактировать значение td при двойном щелчке по нему
Я хочу редактировать значение td конкретного идентификатора, когда я дважды щелкаю по нему. Я написал логику. В приведенном ниже коде функция get() вернет 10 статусов, которые присвоены таблице td. Если дважды щелкнуть любой статус, мне нужна функция редактирования и сохранения на месте. Но я не знаю, почему это не работает. Пожалуйста, кто-нибудь, помогите мне.
<html>
<head><title></title></head>
<body>
<div id="body" >
</div>
</body>
</html>
<script>
$(document).ready(function(){
var table='<table>';
table += '<tr><th style=""> Status</th></tr>';
table += '</table></br>';
$("#body").append(table);
var $tbody = $('<tbody>').appendTo('#body table:last');
$.ajax({
type : 'POST',
url : '@routes.Application.get()',
data : {
itemupc : item[0]
},
beforeSend:function()
{
},
success : function(items) {
$.each(items, function(j, itemsdetails) {
if(itemsdetails[3]=="R")
$tbody.append('<tr><td id="my'+itemsdetails[0]+'" class="editableTD">0</td></tr>');
});
}
});
$("#item_content").on('dblclick','.editableTD',function(e){ //assign event to editableTD class
e.stopPropagation();
var currentID=$(this).attr("id"); //grab the current id instead
var currentValue= $(this).html();
inlineEditSave(currentID,currentValue);
});
function inlineEditSave(currentElement,currentValue)
{
//$(currentElement).html('<i class="fa-li fa fa-spinner fa-spin"></i>');
$(currentElement).html('<input type="text" class="thVal" value="' + currentValue + '" />');
$(".thVal").focus();
$(".thVal").keyup(function (event) {
if (event.keyCode == 13) {
$(currentElement).html($(".thVal").val().trim());
}
});
$(document).click(function () {
$(currentElement).html($(".thVal").val().trim());
});
}
});
</script>
1 ответ
Решение
Учитывая, что вы используете Font Awesome, могу ли я предположить, что вы используете bootstrap? Если да, то есть ли какая-то конкретная причина, по которой вы сами кодируете логику? Существует библиотека для этого, называемая x-edtiable, которая выполняет всю тяжелую работу за вас:
http://vitalets.github.io/x-editable/
Демо / примеры использования можно найти здесь: