ext:TreePanel 动态添加和单击事件


        <ext:TreePanel
ID="UserTreePanel"
runat="server"
Title="用户结构图"
AutoHeight="true"
Border="false">
<Listeners>
<BeforeLoad Fn="nodeLoad" />
<Click Handler="clickTree1(node);" />
</Listeners>

</ext:TreePanel>

?





1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

<ext:XScript ID="XScript1"
runat="server">

    <script>

        var
nodeLoad =  function(node) {

             #{DirectMethods}.NodeLoad(node.id, {

                success: function
(result) {

                    var
data = eval("("
+ result + ")");

                    node.loadNodes(data);

                },

                failure: function
(errorMsg) {

                    Ext.Msg.alert(‘Failure‘, errorMsg);

                }

            });

        }

        var
clickTree1 = function
(node) {

            #{DirectMethods}.ClickTree(node.id);

         }

    </script>

</ext:XScript>


 [DirectMethod]
public string NodeLoad(string nodeID)
{
Ext.Net.TreeNodeCollection nodes = new Ext.Net.TreeNodeCollection();

if (!string.IsNullOrEmpty(nodeID))
{
List<sp_GetUserByReferee_Result> list = _edm.sp_GetUserByReferee(nodeID).ToList();

foreach (var item in list)
{
AsyncTreeNode asyncNode = new AsyncTreeNode();
asyncNode.Text = item.User_DisplayName;
asyncNode.NodeID = item.User_Name;
asyncNode.Icon = Icon.User;
nodes.Add(asyncNode);

}
}

return nodes.ToJson();
}

[DirectMethod]
public void ClickTree(string nodeID)
{
if (!string.IsNullOrEmpty(nodeID))
{
XF_User user = _edm.XF_User.First(c => c.User_Name == nodeID);
ucEdit.LoadData(user.Id);
ucEdit.Show();
}
}

ext:TreePanel 动态添加和单击事件

时间: 2024-11-06 13:10:33

ext:TreePanel 动态添加和单击事件的相关文章

Ext如何动态添加一行组件

用的column布局,点击一个按钮能添加一行组件,如文本框,有下拉框等. 如: 效果: 实现方法如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69

jQuery动态添加的节点事件无法触发

添加节点之前如图: 点击图中的 "第一个" 之后会触发click事件,效果如图: 点击按钮的之后,添加节点之后如图: 这时点击图中的 "第一个",却不会触发click事件. 此时代码如下: <!DOCTYPE html> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <html> <head&

uGUI使用代码动态添加Button.OnClick()事件(Unity3D开发之十二)

猴子原创,欢迎转载.转载请注明: 转载自Cocos2Der-CSDN,谢谢! 原文地址: http://blog.csdn.net/cocos2der/article/details/42705885 uGUI出来这么久了,也一直没好好用用,主要是公司项目不用U3D.昨晚用了下Button,还是比较爽的. 主要说下用代码添加button.OnClick()事件的方法(使用属性面板添加的方法就不说了) 一.创建2D UI Panel,添加你需要的Button. 我添加了3个Button:BtnSt

ugui使用代码动态添加Button.OnClick()事件

using UnityEngine;using UnityEngine.UI;using System.Collections;using UnityEngine.Events;using System.Collections.Generic; public class PersonalInformation : MonoBehaviour{ void Start()    {        List<string> BtnsName = new List<string>();  

处理动态添加的元素事件无效

$(document).bind("input propertychange change","事件元素选择器",function(){ });// 搜索按钮点击事件$(document).on('click',ele,function(){ // ele为对应的事件元素选择器 如:'#appSpecies'})

JavaScript自定义事件,动态添加属性

根据事件的不同,可用的自定义方法也不同. document.createEvent('Event'); 实现主要有4个步骤: 1.创建事件. 2.初始化事件(三个参数:事件名,是否起泡,是否取消默认触发) 3.监听事件 4.触发事件 var Evt = document.createEvent('Event');//创建一个事件 Evt.initEvent('inputChangeEvt', true, true);//初始化事件,给定事件名字 window.addEventListener('

百度地图API——MarkerTool单击事件的添加

百度地图API中实现标记功能,一种是使用覆盖物中的Marker来直接实现,这么用的好处是可以直接使用官方2.0提供的各种接口,但是一些复杂需求实现起来不免有些繁琐,比如鼠标跟随的式样修改,单击后的式样变更等等. 另外一种选择是使用1.2接口中提供的MarkerTool开源库,这个现实标记功能基本是够用了(http://developer.baidu.com/map/index.php?title=open/library) 但在实现标注添加后的单击事件监听时需要对源码进行适当的修改,例如实现标记

单击事件、触摸事件

总体概述: 如果是双击事件要自己手动编写. 如果是三击或更多次数可以借鉴google工程师提供的System.arraycopy(mHits, 1, mHits, 0, mHits.length-1); 总结:给控件添加单击事件或触摸事件都要给该事件添加监听器 一些常用方法汇总:SystemClock.uptimeMillis();表示从开机开始cpu运行的时间. 1.给控件添加单击事件 例如:给一个图片对话框iv_drag添加一个单击事件 双击事件 iv_drag.setOnClickList

动态给表格TD 添加单击事件

需求:项目中对原有的JQ框架表格功能要进行完善 实现 单元格单击编辑 思路:JS中遍历生成好的表格 动态给TD 添加单击事件. 问题:遍历添加时,给TD 加样式 加属性都可以 但是如果要加单击事件 死活加不上去. 1 //文本控件模版 2 var textTemp = "<input type=\"text\" value={0} />"; 3 var RawData; //原始数据 4 //js控制列 可修改 5 $("tr", $