5

これは簡単なことのように思えますが、jstree "data.rslt.obj.text()"メソッドは、現在のノードとそのすべての子のテキストを返すのが好きです。ノードの名前を変更して現在のノード名(new_name)を取得する方法を理解しましたが、単に選択したときに現在のノードのみのテキストを取得するにはどうすればよいですか?また、chromeまたはfirebugを使用してjstreeでこれらすべてのメソッドとプロパティを見つける方法についての洞察をいただければ幸いです。たとえば、「data.rslt」を選択したときに表示される要素のリストはどこにありますか。ありがとう!

 $("#RequirementsTree")
    .bind("select_node.jstree", function(event, data) {
            if(is_requirement_node(data))
            {
                var ReqCheck = data.rslt.obj.attr("name");

                @* This is a REQUIREMENT *@
                if(ReqCheck == "requirement")
                {
                    $("#RMSDoc_RequirementFlag").val("EDIT");
                    $("#RMSDoc_RBSRequirement_RequirementsId").val(data.rslt.obj.attr("id").substring(4));
                    $("#RMSDoc.RBSRequirement.RequirementsId").val(data.rslt.obj.attr("id").substring(4));
                    $("#RMSDoc_RBSRequirement_RequirementsText").val($.trim(data.rslt.obj.text()));
                    $("#RMSDoc_TreeBranch_Text").val("");
                    $("#HierarchyText").hide();
                    $("#RMSDoc_TreeBranch_Text").hide();
                    $("#ExistingTreeSubmit").val("@Model.RMSDoc.RMSEditReqButton.ConfigurableLabelDesc");

                }
                else {
                    alert("Requirement node select error");
                }
            }
            @* This is a TREE BRANCH *@
            else
            {
                debugger;
                $("#RMSDoc_RequirementFlag").val("ADD");
                $("#HierarchyText").show();
                $("#RMSDoc_TreeBranch_Text").show();
                $("#RMSDoc_TreeBranch_Text").val($.trim(data.rslt.obj.text()));
                $("#RMSDoc_TreeBranch_id").val(data.rslt.obj.attr("id").substring(4));
                $("#RMSDoc_RBSRequirement_RequirementsText").val("");
                $("#ExistingTreeSubmit").val("@Model.RMSDoc.RMSCreateReqButton.ConfigurableLabelDesc");
            }
     })
    .bind("create.jstree", function(e, data) {
4

1 に答える 1

11

チェックボックスがオンになっているjstreeを使用している場合はlength、チェックボックスセレクターのをチェックできます。

if ($('.jstree-checked').length == 1) {
    alert( 'Checked Item -: ' + $('.jstree-checked').text() );
}

チェックボックスを使用していない場合は、このセレクターを使用してください。

if ($('.jstree-clicked').length == 1) {
    alert( 'Selected Item -: ' + $('.jstree-clicked').text() );
}

jstreeのすべてのアイテムとメソッドのリストを取得するには、jstree.jsファイルのchromeまたはFirebugのいずれかにデバッグポイントを配置する必要があります。たとえば、.jsで.bindメソッドを見つけて、その特定の行のデバッグポイント..そのポイントがヒットしたら、引数にカーソルを合わせると、その中のメソッドを垣間見ることができます。

于 2012-09-07T15:47:05.667 に答える