В следующем коде:
var genContent = "<tr><td>please wait!!!</td></tr>";
var outputElement = $("#projectsTable tr:first").after(genContent);
myForm = $(this).find("form");
submitForm(myForm, outputElement);
Я ожидаю, что outputElement будет элементом, сгенерированным методом after
из jquery, но по какой-то причине outputElement ссылается на заголовки таблицы.
Что мне нужно сделать, чтобы получить вновь созданный элемент?
after
того, как метод вставки элемента (ов) после текущего выбора, и возвращает тот же выбор тока. Поэтому он не меняет выбор. Если вам нужны элементы, которые вы хотите вставить, возможно, создайте объект jQuery и вставьте это.
var genContent = "<tr><td>please wait!!!</td></tr>";
var outputElement = $(genContent);
$("#projectsTable tr:first").after(outputElement);
Вам нужно использовать .insertAfter()
если вы хотите, чтобы outputElement
ссылался на tr
элемент
var = "<tr><td>please wait!!!</td></tr>";
var outputElement = $(genContent).insertAfter("#projectsTable tr:first");
myForm = $(this).find("form");
submitForm(myForm, outputElement);
$("#projectsTable tr:first").after(genContent).end()
.after()
возвращает тот же объект jQuery, так что нет родительского.end()
к которому можно.end()
это то, что.end()
).