私はBootstrap-Treeviewを使用しています。チェックボックス付きのツリーが必要です。そして、私はボタンを押すとtreview形式ですべてのツリーをサーバーに送りたいと思う。しかし、私はツリービューから実際のデータを抽出する方法を理解できません。ページが読み込まれた後ブートストラップツリービューから現在のデータ(オブジェクト/ json)を取得
<html xmlns="http://www.w3.org/1999/html">
<head>
<link href="bootstrap-treeview.min.css" rel="stylesheet">
<link href="bootstrap.min.css" rel="stylesheet">
<script src="jquery.js"></script>
<script src="bootstrap-treeview.min.js"></script>
<script>
window.onload = function() {
var object = [
{
text: "Parent 1",
nodes: [
{
text: "Child 1",
nodes: [
{
text: "Grandchild 1"
},
]
},
{
text: "Child 2"
}
]
},
{
text: "Parent 2"
},
];
$('#tree').treeview({
data: object,
showCheckbox: true,
})
.on('nodeSelected', function (event, data) {
console.log('node selected = ' + JSON.stringify(event) + '; data = ' + JSON.stringify(data));
console.log('object =' + JSON.stringify(object));
console.log('tree =' + JSON.stringify($('#tree').data('treeview')));
console.log('tree 2 =' + JSON.stringify($('#tree')));
console.log('tree 3 =' + JSON.stringify($('#tree').treeview(true)));
});
};
</script>
</head>
<body>
<div id="tree">twetwe</div>
</body>
</html>
私は任意のチェックボックスをチェックし、任意の項目をクリックするよりも、これにconsole.logが呼び出されます。しかし、すべてのツリービューの実際の状態に関する情報はありません。私は、すべてのノードについて、その情報を必要とする:
{"text":"Child 2","nodeId":3,"parentId":0,"selectable":true,"state":{"checked":false,"disabled":false,"expanded":false,"selected":true}}
ありがとうございました!しかし、私はチェックノードだけが必要であることが分かった。 APIにはgetCheckedメソッドがありませんが、実際には存在します。 var checked = $( '#tree')。treeview( 'getChecked') - 私のために働きます。 – cynepnaxa
喜んで助けました。公開されたすべてのメソッドを見るには、$( '#tree').data( 'treeview')を使ってコンソールの 'treeview'オブジェクトを見て、そのオブジェクトを探索します。 – Praym