私は多くのことをしましたが、もう何も機能していません.tdをクリックすると、そのtdのIDが取得され、このIDがデータベースに送られ、そのIDのすべての子が取得されます。今、IDに基づいて、それらの子をそのtdに追加したいと思います。しかし、ネストされた td をクリックすると、親の ID が取得されます。これが私のコードです。
<script type="text/javascript" >
$(document).ready(function() {
var url = document.URL;
var parts = url.split("/");
var t = "";
for(var i=0; i<parts.length-1; i++) {
t += parts[i] + "/";
}
var which_li = "";
$("td").bind('click',function(e) {
e.stopPropagation();
which_li = $(this).attr("id");
$.ajax({
type: "POST",
data : {id : which_li},
cache: false,
url: t+"treeData",
success: function(data){
var childs = data.split(",");
var res = "<table style='border:1px solid #ddd'><tr>";
for(var i=0; i<childs.length; i++ ){
if(childs[i] != "") {
res += "<td id='"+childs[i]+"'>"+childs[i]+"</td>";
}
}
res += "</tr></table>"
$("td[id='" + which_li +"']").append(res);
}
});
});
});
</script>
すべての id のルートとなるデフォルトの id を持つ HTML テーブル:
<table id="data" style=" margin:0 auto; border:1px solid #ddd" >
<tr>
<td id='2'>2</td>
</tr>
</table>
一度だけ動作しますが、その後は子 td ではなく親 td の ID のみを取ります。この問題を解決するのを手伝ってください。
e.stopPropagation();
Stop Propagation も機能しなくなりました。
ここに私のSQLテーブルがあります
create table user_login (
id int not null auto_increment,
parent int not null
);
私のテーブル構造は次のようになります:
// this is my table strucutre
<table id="data" >
<tr>
<td id="2">2
<table>
<tr>
<td id="24">24
<table>
<tr>
<td id="29">29</td>
<td id="30">30</td>
</tr>
</table>
</td>
<td id="25">25</td>
<td id="26">26</td>
</tr>
</table>
</td>
</tr>
</table>
ID 2 をクリックすると、子 24、25、26 を含む td にテーブルが追加され、24 をクリックすると、子 29、30 を含む td にテーブルが追加されます。
しかし、24または25のIDを取得したい場合、毎回2である親tdのIDが返されます。私を助けてください。