Witam!
Mam tabelkę i w ostatniej kolumnie przechowuje napis "opcje". Po kliknięciu na ten napis powinno się pojawić opcje(np. textbox z wartością z 2 kolumny w tym wierszu) i chciałbym w jakiś niewidoczny sposób przechowywać id rekordu w tagu komórki, aby później odwoływać się do niej za pomocą jQuery. W jaki sposób zapisać tam tą wartość?
Pzdr
0
2
Nie bardzo jeszcze widzę co chcesz zrobić, ale zakładam, że każdy wiersz tabeli ma odpowiadać rekordowi w bazie danych, i chcesz sobie ID zapisać?
Do przechowywania dodatkowych danych użyj sobie atrybutu data-*
, np: (takie coś istnieje od HTML5, ale oprócz plucia się walidatora w niczym nie przeszkadza, żeby używać przy innych doctype)
<table id="moja_tabelka">
<tr data-idrekordu="1">
<td>dane</td>
<td>dane</td>
<td>dane</td>
<td>opcje</td>
</tr>
<tr data-idrekordu="2">
<td>dane</td>
<td>dane</td>
<td>dane</td>
<td>opcje</td>
</tr>
</table>
A kod javascript:
$(document).ready(function(){
$('#moja_tabelka tr td:last-child').click(function(){ // td, które jest ostatnim dzieckiem tr
// this wskazuje na td
var val = $(this).parent().find('>td:nth-child(2)').html(); // drugie dziecko rodzica td, a konkretnie wartość tam wpisana
$(this).append('<input value="'+val+'" />'); // do komórki z "opcje" doklejamy inputa z wartością komórki.
});
});
edit:
jeszcze kod, który wyświetli w alercie ten zapisany id, po kliknięciu wiersza (nie wiem jakie to ma mieć zastosowanie, to tylko przykład)
$('#moja_tabelka tr').click(function(){
var val = $(this).attr('data-idrekordu');
alert(val);
});