この質問はこれに関連しています:ソート後に親の新しい順序を表示するにはどうすればよいですか?
私はすでに上記の質問を解決しました。次に、子が並べ替えられたときに親IDを取得します。
例:水を電気に交換すると、
<li id="1">
<span class="cat-title">Utilities</span>
<ul class="dropenv mt">
<li class="innerList">Electricity</li>
<li class="innerList">Water</li>
<li class="innerList">Trash</li>
<li class="innerList">Television</li>
</ul>
</li>
出力は、
1_Electricity
1_Water
1_Trash
1_Television
1はユーティリティのIDであるため
コードは次のとおりです。
[.............]
var parentID;
var origColor;
$(".dropenv").sortable({
connectWith: "ul.env-data",
dropOnEmpty: true,
start: function(event, ui) {
origColor = ui.item.text();
//this is the id that produce undefined value
parentID = ui.item.parent().siblings('li').attr('id');
},
stop: function(event, ui) {
var order = [];
ui.item.closest('ul').children('li').each(function() {
order.push($(this).data('position'));
var c = $(this).text();
var z = parentID;
//if (c === origColor) {
// var z = origTitle;
//} else {
// var z = $(this).parent().siblings('.cat-title').text();
//}
$("#cl").append(z + "_" + c + "<br /\>");
});
}
});
[.............]
上記のコードは未定義の値を生成します:
undefined_Electricity
undefined_Water
undefined_Trash
undefined_Television
正確な親IDを取得するにはどうすればよいですか?