Apr 26, 2016, 11:30 AM
[FIXED] [#1315] [4.1.0] Incorrect parameter order/count on TreeStroe.load Listeners handler function
hi there,
i checked what to do to upgraded our project to Ext.net 4 and i found out that the parameter order and count of the TreeStore.load Listener (using Handler) is incorrect
here also a full examples
Paul
i checked what to do to upgraded our project to Ext.net 4 and i found out that the parameter order and count of the TreeStore.load Listener (using Handler) is incorrect
<Listeners>
<Load Handler="console.log('Load.handler()'); for (i = 0; i < arguments.length; i++) { console.log(arguments[i]);}" />
</Listeners>
produces the following java script codelisteners: {
load: {
fn: function(item, node, records, successful, options) {
console.log('Load.handler()');
for (i = 0; i < arguments.length; i++) {
console.log(arguments[i]);
}
}
}
}
but it should be like thislisteners: {
load: {
fn: function (item, records, successful, operation, node, eOpts) {
console.log('Load.handler()');
for (i = 0; i < arguments.length; i++) {
console.log(arguments[i]);
}
}
}
}
here also a full examples
<%@ Page Language="C#" %>
<script runat="server">
protected void NodeLoad(object sender, NodeLoadEventArgs e)
{
string prefix = e.ExtraParams["prefix"] ?? "";
if (!string.IsNullOrEmpty(e.NodeID))
{
for (int i = 1; i < 6; i++)
{
Node asyncNode = new Node();
asyncNode.Text = prefix + e.NodeID + i;
asyncNode.NodeID = e.NodeID + i;
e.Nodes.Add(asyncNode);
}
for (int i = 6; i < 11; i++)
{
Node treeNode = new Node();
treeNode.Text = prefix + e.NodeID + i;
treeNode.NodeID = e.NodeID + i;
treeNode.Leaf = true;
e.Nodes.Add(treeNode);
}
}
}
</script>
<!DOCTYPE html>
<html>
<head runat="server">
<title>TreePanel using PageProxy - Ext.NET Examples</title>
<link href="//examples.ext.net/resources/css/examples.css" rel="stylesheet" />
<script>
var paramsFn = ["item", "records", "successful", "operation", "node", "eOpts"];
var paramsHandler = ["item", "node", "records", "successful", "options", "[empty]"];
var LoadHandler = function (item, records, successful, operation, node, eOpts) {
console.log('Load.fn()');
for (i = 0; i < arguments.length; i++) {
console.log('%s: %o', paramsFn[i], arguments[i]);
}
}
</script>
</head>
<body>
<form runat="server">
<ext:ResourceManager runat="server" />
<h1>TreePanel using PageProxy</h1>
<ext:TreePanel
ID="TreePanel1"
runat="server"
Title="Tree"
Width="200"
Height="500"
Border="false">
<Store>
<ext:TreeStore runat="server" OnReadData="NodeLoad">
<Proxy>
<ext:PageProxy />
</Proxy>
<Listeners>
<Load Handler="console.log('Load.handler()'); for (i = 0; i < arguments.length; i++) { console.log('%s: %o', paramsHandler[i], arguments[i]); }" />
<%--<Load Fn="LoadHandler" />--%>
</Listeners>
</ext:TreeStore>
</Store>
<Root>
<ext:Node NodeID="0" Text="Root" Expanded="true" />
</Root>
<ViewConfig LoadMask="false" />
</ext:TreePanel>
</form>
</body>
</html>
Regards Paul
Last edited by Daniil; Apr 29, 2016 at 3:46 PM.
Reason: [FIXED] [#1315] [4.1.0]