2017-10-10 25 views
0

该插件说,您可以使用标签中的'node.depth'来确定已经点击了哪个标签级别(国家或省)。我似乎无法从RichUI:treeview标记访问node.depth。当1或2的值硬编码到onLabelClick中时,我的代码工作正常。但是当我指定node.depth作为参数时,没有任何东西会传递给javascript。我如何访问node.depth?我警告说,“级别未定义”如何访问(Grails插件)<RichUI:treeview>标记中的node.depth属性?

<richui:treeView id="tree" xml="${data}" 
onLabelClick="treeClickHandler(node.depth, id)" showRoot="false"/> 


function treeClickHandler(level, id){ 
    alert("level is " + level + " and id is " + id); 
    if (level == 1){ 
     postForCountryIdeas(id); 
    } 
    else{ 
     postForProvControls(id); 
    } 
} 

def index() { 
def countryList = Country.list() 
def writer = new StringWriter() 
def xml = new MarkupBuilder(writer) 
def writer2 = new StringWriter() 
def xml2 = new MarkupBuilder(writer2) 
xml2.mkp.xmlDeclaration(version: "1.0", encoding: "utf-8") 
xml2.countrys { 
    countryList.each{item-> 
     xml2.country(name:"${item.name}", id: item.id){ 
      item.provinces.each{ prov-> 
      province(name:"${prov.name}", id: prov.id) 
      } 
     } 
    } 
} 
[data: writer2.toString()] 
} 

回答

0

的解决方案是node.node.depth改用node.depth的按的文档。