Mam table
.Jquery dodać wiersz tabeli po wierszu, który dzwoni jquery
<table id="servers" ...>
...
{section name=i loop=$ownsites}
<tr id="site_id_{$ownsites[i].id}">
...
<td>{$ownsites[i].phone}</td>
<td class="icon"><a id="{$ownsites[i].id}" onClick="return makedeleterow(this.getAttribute('id'));" ...></a></td>
</tr>
{/section}
<tbody>
</table>
I ten JavaScript.
<script type="text/javascript">
function makedeleterow(id)
{
$('#delete').remove();
$('#servers').append($(document.createElement("tr")).attr({id: "delete"}));
$('#delete').append($(document.createElement("td")).attr({colspan: "9", id: "deleter"}));
$('#deleter').text('Biztosan törölni szeretnéd ezt a weblapod?');
$('#deleter').append($(document.createElement("input")).attr({type: "submit", id: id, onClick: "return truedeleterow(this.getAttribute('id'))"}));
$('#deleter').append($(document.createElement("input")).attr({type: "hidden", name: "website_del", value: id}));
}
</script>
To działa dobrze, to sprawia, że tr
po sobie table
„s ostatni tr
i umieszcza informacje o niej, a funkcja kasowania działa również w porządku.
Ale chciałbym, aby ten Dołącz POtr
(z td
class="icon"
), który jest wywołanie skryptu. Jak mogę to zrobić?
Chyba nie nadążam. zastosuj .next() lub następny ("tr"). PS: i nie musisz ponownie wybierać elementów więcej niż jeden raz. możesz zastąpić $ (document.createElement ('tr')) przez $ ('') .attr ('id', 'delete') – meo
Tak, @meo. Zamiast $ ("# deleter") wiele razy, po prostu wykonaj var deleter = $ ("# deleter"); następnie za każdym razem używaj zmiennej referencyjnej. – Geoff
fi wykonaj to za pomocą '$ ('# id_strony #' id) .after(). Append ($ (document.createElement (" tr ")). Attr ({id:" usuń "}));' lub z ' next() 'zostanie dodane wewnątrz' tr' po 'td class =" icon "'. –