第一种:

直接通过TreePanel中的Config Option中的listener来添加,代码如下:

var TreePan = new Ext.tree.TreePanel({

id: 'TreePan',

title: "侧边栏",

useArrows: true,

width: 240,

height: 660,

region: 'west',

frame: true,

autoScroll: true,

enableDD: false,

containerScroll: true,

draggable: false,

root: root,

rootVisible: false,

collapsible: true,

collapsed: true,

animate: true,

listeners: {

'click': function(node, e) {

if (node.isLeaf()) {

var newWin = new Ext.Window({

width: 745,

height: 529,

title: "现用技术标准",

html: "<iframe src=/"Manage/VolunteerShipInfo.aspx/" marginheight=/"0/" marginwidth=/"0/" width=/"727/" height=/"500/"></iframe>"

});

newWin.show();

}

}

}

失败,表现为程序对 “node.isLeaf()”这个方法的识别有问题,加上这条if语句,则点击所有节点没反应(包括非叶节点);去掉这个if,则点所有节点都会出现新窗口(包括非叶节点)。

第二种:

使用TreePan.on来添加Event,代码如下:

var TreePan = new Ext.tree.TreePanel({

id: 'TreePan',

title: "侧边栏",

useArrows: true,

width: 240,

height: 660,

region: 'west',

frame: true,

autoScroll: true,

enableDD: false,

containerScroll: true,

draggable: false,

root: root,

rootVisible: false,

collapsible: true,

collapsed: true,

animate: true,

}

TreePan.on('click', BiaoZhunClick);

function BiaoZhunClick(node, e) {

if (node.leaf) {

//            e.stopEvent();

var newWin = new Ext.Window({

width: 745,

height: 529,

title: "现用技术标准",

html: "<iframe src=/"Manage/VolunteerShipInfo.aspx/" marginheight=/"0/" marginwidth=/"0/" width=/"727/" height=/"500/"></iframe>"

});

newWin.show();

}

}

失败,表现如方法二。

第三种:

通过查API Document,知道可以用addListener这个方法来给TreePanel添加Event,于是尝试如下:

var TreePan = new Ext.tree.TreePanel({

id: 'TreePan',

title: "侧边栏",

useArrows: true,

width: 240,

height: 660,

region: 'west',

frame: true,

autoScroll: true,

enableDD: false,

containerScroll: true,

draggable: false,

root: root,

rootVisible: false,

collapsible: true,

collapsed: true,

animate: true,

}

TreePan.addListener('click', BiaoZhunClick);

function BiaoZhunClick(node, e) {

if (node.leaf) {

//            e.stopEvent();

var newWin = new Ext.Window({

width: 745,

height: 529,

title: "现用技术标准",

html: "<iframe src=/"Manage/VolunteerShipInfo.aspx/" marginheight=/"0/" marginwidth=/"0/" width=/"727/" height=/"500/"></iframe>"

});

newWin.show();

}

}

成功,终于可以实现只有在点击叶节点时才弹出浮窗了。

转自:http://blog.csdn.net/scythev/article/details/4818610

转载于:https://www.cnblogs.com/xuhongfei/p/4037060.html

ExtJS中给Tree节点加click事件相关推荐

  1. 使用mshtml为页面中的超级链接添加Click事件 - 蜡人张 - 博客园

    导读: 使用mshtml为页面中的超级链接添加Click事件 在使用mshtml操作HTML页面时可能遇到要为页面的超级链接添加Click事件的操作,可以用下面的代码来完成: foreach(msht ...

  2. Vue中关于自定义组件定义@click事件不生效的解决办法

    .native修饰符 -- 侦听组件根元素上的原生事件 当你给一个vue组件或者是自定义组件绑定事件的时候,要加上native,如果是普通的html元素,就不需要 比如:如果使用router-link ...

  3. EXT扩展实例:在EXT4中检测Iframe的加载事件,并给它加上MASK

    验证环境  ext-4.0.7-gpl 1 Ext.onReady(function() {2 Ext.widget('panel', {3 title: 'IFrame事件',4 width: 50 ...

  4. MVC4中EasyUI Tree异步加载JSON数据生成树

      1,首先构造tree接受的格式化数据结构MODEL /// <summary> /// 定义EasyUI树的相关数据,方便控制器生成Json数据进行传递 /// </summar ...

  5. 鼠标事件中MouseDown、MouseUp与Click事件有什么区别?

    Mouse Down是鼠标按下触发的动作:Mouse Up是鼠标抬起触发的动作:Mouse  Click就是按下又抬起的动作:click是激活,包含了MouseClick,MouseClick是鼠标点 ...

  6. js中对a标签增加click事件,事件不生效的解决方案

    首先<a>这是a标签</a> 错误的写法:$('a').click(); 正确的写法$('a').html().click(); 或者 a标签里套个 p标签.<a> ...

  7. jQuery中click事件多次触发解决方案

    jQuery 中元素的click事件中绑定其他元素的click事件. 因为jQuery中的click事件会累计绑定,导致事件注册越来越多. 解决方案: 1.能够避开,避免把click事件绑定到其他元素 ...

  8. el-table click事件多次触发_JavaScript从零开始——DOM事件编程(1)

    事件的本质是程序各个组成部分之间的一种通信方式,也是异步编程的一种实现.DOM 支持大量的事件,本章开始,我们一起看看 DOM 的事件编程. 1 概念 DOM 的事件操作(监听和触发),都定义在Eve ...

  9. [C# 基础知识系列]专题五:当点击按钮时触发Click事件背后发生的事情

    引言: 当我们在点击窗口中的Button控件VS会帮我们自动生成一些代码,我们只需要在Click方法中写一些自己的代码就可以实现触发Click事件后我们Click方法中代码就会执行,然而我一直有一个疑 ...

最新文章

  1. 【力扣网练习题】回文数
  2. php 返回字符串给aja,解决ajax异步请求返回的是字符串问题
  3. [05]EXTJS4.0的读写器reader,writer
  4. mac java偏好设置_在 Mac中配置Java开发环境
  5. 浅析Banner设计
  6. Struts2 标签配置详细
  7. java 部署环境_Centos7部署JAVA环境
  8. LeetCode Hot100 ---- 回溯算法专题
  9. 程序员修炼之道--从小工到专家(一)
  10. java对List的优雅排序
  11. SpringAOP的CGLIB动态代理的底层原理实现
  12. cygwin 编译linux内核,【记录】Cygwin下交叉编译Linux内核时用make menuconfig去确认和修改配置...
  13. php列表排布,php全排列递归算法代码
  14. XidianOJ 1024 简单逆序对
  15. c语言常用的100个程序,100个经典C语言程序,大家可以进来看看。
  16. Mac数据图表软件|让你的论文数据更加直观漂亮
  17. Java保留小数位数两种简单方法
  18. 计算机无法装补丁,老司机教你win7 sp1补丁安装失败怎么办
  19. webstorm 2018 激活破解方法大全
  20. EXCEL表格-excel如何换行、批量换行

热门文章

  1. try…except…finally…_用先……再……然后……描写蚂蚁搬家的动作?
  2. poj2079(一堆点找出最大的三角形)
  3. NOIP2016全国信息学分区普级组 买铅笔(c++版)
  4. 世界对一名颓废者的惩罚——SDOI2019R1游记
  5. testng执行参数_TestNG中注解使用 笔记
  6. 2014年12月福建省高等学校计算机应用水平等级考试考试大纲,福建省高等学校计算机应用水平等级考试...
  7. Java面试没过_Java面试中遇到的坑【填坑篇】
  8. Django中重定向页面的时候使用命名空间
  9. python入门之迭代器
  10. MyBatis下MySqL用户口令不能为空