Я пытаюсь следовать примеру профессора создания редактируемой таблицы при двойном щелчке по записи в таблице HTML. Так что мой метод данных выглядит следующим образом:Создать редактируемую таблицу HTML
function formatData(message) {
var str = "<table border=1>";
for (var i = 0; i < message.length; i++) {
str += "<tr>" + "<td class='editable'>" + message[i].id + "</td>" +
"<td>" + message[i].name + "</td>" +
"<td class='editable'>" + message[i].url + "</td>" +
"<td class='editable'>" + message[i].desc + "</td>" +
"<td>" + "<a href='#' onclick='deleteRequest(this); return false' id='" + message[i].id + "'>delete</a>" + "</td>" +
" + "</td>" + "</tr>";
}
str += "</table>";
return str;
}
Я связываю функцию редактирования() в тегах, чьи атрибуты класса "редактируется. Тогда моя функция редактирования делает:
function edit(elm) {
/* check to see if we are already editing */
if (elm.firstChild.tagName && elm.firstChild.tagName.toUpperCase() == "INPUT")
return;
/* save original content */
var orig = elm.innerHTML;
/* create edit field */
var input = document.createElement("input");
input.type = "text";
input.value = elm.innerHTML;
input.size = 20;
/* convert content to editable */
elm.innerHTML = '';
elm.appendChild(input);
/* position cursor and focus */
if (input.selectionStart)
input.selectionStart = input.selectionEnd = 0;
else
{
var range = input.createTextRange();
range.move("character", 0);
range.select();
}
input.focus();
/* set save trigger callback */
input.onblur = function(){save(elm, input,orig);};
}
Я запутался, как я хотел бы сохранить информацию и передать ее на веб-сервер для обновления. Мне нужен идентификатор, url и desc для обновления веб-сервера. Поскольку они дважды нажимают на запись в таблице, это просто дает мне элемент в этом значении, но у меня нет идентификатора. Должен ли я изменить две строки в моих FormatData к:
"<td class='editable' id='" + message[i].id + "'>" + message[i].url + "</td>" +
"<td class='editable' id='" + message[i].id +"'>" + message[i].desc + "</td>" +
Так что, как я могу попросить веб-сервер для URL и по алфавиту с этим значением идентификатора? Это похоже на плохой способ сделать это, так как теперь у двух есть один и тот же идентификатор, но я не уверен, так как я относительно новичок в AJAX, HTML, Javascript. Благодарю.
Извините, я как-то пропустил это, но вы можете вытащить внутренний тег тега, не зная, почему вам нужно хранить его в двух экземплярах по атрибуту id ячейки. Тем не менее, почему не атрибут id в строке вместо ячейки? – user17753