【问题标题】:Using jstree checkboxes in forms在表单中使用 jstree 复选框
【发布时间】:2013-08-25 19:50:54
【问题描述】:

抱歉,标题有点模棱两可。我的问题很具体(可能只是我是新手),我只是不知道如何在标题中解释。

我目前正在升级网页。此网页有 3 个列表,其中包含项目,例如设备列表具有不同类型的汽车。每个项目都有一个复选框,用户检查他想要使用的那些,然后按下一个按钮。然后他会收到一份基于他的选择的报告。

<input type="button" class="mapbutton"  onclick="company.view.reports.serialize(this);" 
                style="width:280px;font-size:1em" 
                value="<fmt:message key="owner.text.open_report" />" />

这是按钮的代码。

serialize: function(what){
              var m = company.model.report;
              var strDev = 'devices=';
              var devicesCB = $(".devicesCB:checked");
              if (devicesCB.length > 0){
                  for (var i=0;i<devicesCB.length;i++) {
                     strDev += devicesCB[i].value + ',';
                  }
                  strDev = strDev.substring(0, strDev.length - 1);
              }

这是用户按下按钮时触发的序列化函数的一部分。 $(".devicesCB:checked") 部分是 jQuery,并返回类 "devicesCB" 的所有选中复选框。这条线也是我问题的关键。

checkbox : {
        "real_checkboxes" : "true",
        "override_ui" : "true",
        "real_checkboxes_names" : function(n){
            console.log("As");
            return[("area"+n[0].id),n[0].id];
        }
    },

根据 jstree 文档,这应该创建在表单中工作的复选框。任何想法我将如何检索这些数据?我试过 var cb = $(".jstree-checkbox:checked") 并没有真正做任何事情,我也尝试使用树的选择器 var areasCB = $("#tree"); 但我不知道该怎么做。

我很确定这是一个相当简单的问题,但总的来说我对 jQuery 和 javascript 还是很陌生。

【问题讨论】:

    标签: jquery jquery-selectors jstree


    【解决方案1】:

    这是获取选中节点的一种方法:

    $("#my_tree").jstree("get_checked", null, false).each(function() {
        //do something
    });
    

    【讨论】:

      猜你喜欢
      • 2012-01-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多