SmartClient_v101p_2016-03-14_PowerEdition
We use a custom paging model with our grid since we have to integrate with some legacy components in our application. Basically, we execute a new fetchData request on the grid with some additional parameters and the server returns the correct page of data. This worked in with SmartClient 9.1. I have simplified this code in the test case for brevity. Basically, when the user selects the page, I call fetchData.
This functionality is now throwing an error in IE11 only. It works in Chrome with no exceptions.
REPRO Steps:
========
1. Load test case
2. Select page 1 from the drop down
3. Observe the console (attached image)
	 
 
As mentioned, this works in Chrome and in SmartClient_v91p_2014-04-10_PowerEdition. I tested a few previous 10.1 versions and they still had the issue.
Looking at the debug JS, looks like something changed with focus on the dynamic form, but that's all I could ascertain.
					We use a custom paging model with our grid since we have to integrate with some legacy components in our application. Basically, we execute a new fetchData request on the grid with some additional parameters and the server returns the correct page of data. This worked in with SmartClient 9.1. I have simplified this code in the test case for brevity. Basically, when the user selects the page, I call fetchData.
This functionality is now throwing an error in IE11 only. It works in Chrome with no exceptions.
REPRO Steps:
========
1. Load test case
2. Select page 1 from the drop down
3. Observe the console (attached image)
Code:
	
	<!DOCTYPE html>
<html>
    <head>
        <title></title>
        
        <style>
            .diagInfo {
                font-size: 14px;
                font-weight: bold;
                padding: 5px;
            }
        </style>
        
        <script type="text/javascript" SRC="http://localhost:8080/isomorphic/system/modules/ISC_Core.js"></script>
        <script type="text/javascript" SRC="http://localhost:8080/isomorphic/system/modules/ISC_Foundation.js"></script>
        <script type="text/javascript" SRC="http://localhost:8080/isomorphic/system/modules/ISC_Containers.js"></script>
        <script type="text/javascript" SRC="http://localhost:8080/isomorphic/system/modules/ISC_Grids.js"></script>
        <script type="text/javascript" SRC="http://localhost:8080/isomorphic/system/modules/ISC_Forms.js"></script>
        <script type="text/javascript" SRC="http://localhost:8080/isomorphic/system/modules/ISC_DataBinding.js"></script>
        <script type="text/javascript" SRC="http://localhost:8080/isomorphic/system/modules/ISC_Drawing.js"></script>
        <script type="text/javascript" SRC="http://localhost:8080/isomorphic/system/modules/ISC_PluginBridges.js"></script>
        <script type="text/javascript" SRC="http://localhost:8080/isomorphic/system/modules/ISC_Charts.js"></script>    
        <script type="text/javascript" SRC="http://localhost:8080/isomorphic/skins/EnterpriseBlue/load_skin.js"></script>
    
        <script type="text/javascript" >
            var isomorphicDir="http://localhost:8080/isomorphic/";
            
            // set this to the correct JIRA ticket
            var JIRA_TICKET = "SNTQ-1219";
            
            isc.DataSource.create({
            ID: "countryDS",
            dataURL: "SNQA-1219-1.json",
            fields:[
                {name:"continent", title:"Continent"},
                {name:"countryCode", title:"Code"},
                {name:"countryName", title:"Country"},
                {name:"capital", title:"Capital"}
            ],
            dataFormat: "json",
            clientOnly: true
            })
            
            
            // once page loads set some diagnostic information, DO NOT CHANGE
            isc.Page.setEvent("load", function() {
                document.title = JIRA_TICKET + "   (SmartClient version " + isc.versionNumber + ")";
                var html = [];
                html.push("Jira: " + JIRA_TICKET);
                html.push("SmartClient: " + isc.versionNumber);
                html.push("Browser: " + navigator.appCodeName + " " + navigator.appName + " " + navigator.appVersion);
                diagLabel.setContents( html.join("<br>"));
            });
            
        </script>
    <!--mstheme--><link rel="stylesheet" type="text/css" id="onetidThemeCSS" href="../../_themes/Lichen/Lich1011-65001.css"><meta name="Microsoft Theme" content="Lichen 1011, default">
</head>
    
    <body>
        <script>
        
            // ===== DO NOT REMOVE =====
            var diagLabel = isc.Label.create({
                        ID: "diagInfo",
                        width: "100%",
                        styleName: "diagInfo",
                        autoFit: true
                    });
            // ===== DO NOT REMOVE =====
                        
            // basic grid        
            var grid = isc.ListGrid.create({
                dataSource: countryDS,
                dataFetchMode : "local",            position: "relative",
                width : "100%",
                align : "center",
                autoFitData : "vertical",
                autoFitMaxHeight : 400,
                alternateRecordStyles : true,
                canAddFormulaFields : true,
                canAddSummaryFields : true,
                canGroupBy : true,
                canReorderFields : true,
                showGroupSummary : true,
                groupByMaxRecords : 5,
                useAdvancedFieldPicker: true,
                advancedFieldPickerThreshold: 5,
                autoDraw: false
            });    
            
                
            // the main page layout - place all other components afetr diagLabel
            var layout = isc.VLayout.create({
                width:"100%",
                membersMargin: 20,
                members: [
                    // ===== DO NOT REMOVE diagLabel
                    diagLabel,
                    isc.DynamicForm
                                        .create({
                                            id: "form",
                                            titleWidth : 40,
                                            autoDraw : false,
                                            fields : [ {
                                                name : "pageNumber",
                                                title : "Page",
                                                type : "select",
                                                valueMap: ["1", "2", "3"],
                                                width : 80,
                                                changed : function(form, item) {
                                                    fetchPage(item.getValue());
                                                }
                                            } ]
                                        }),
                    // ===== place anty components here
                    
                    grid
                            
                ]
            });
            
            var fetchPage = function(page) {
                grid.fetchData(null, function(dsResponse, data, dsRequest) {
                        isc.warn("Returned " + data.length + " records",
                                    null, {
                                        buttons : [ Dialog.OK ]
                                    });
                });
            }
                
        </script>
    </body>
</html>
As mentioned, this works in Chrome and in SmartClient_v91p_2014-04-10_PowerEdition. I tested a few previous 10.1 versions and they still had the issue.
Looking at the debug JS, looks like something changed with focus on the dynamic form, but that's all I could ascertain.
Comment