GridWeb validation issues

@lswe,

We evaluate your issue further.
Did you try the .aspx file, we’ve updated according to your requirements a bit. Using setTimeout is just to make the alert asynchronous. If you do not call it like this, it will block the user input. It does not have any relation with the server side function.

Maybe you should investigate a bit more… Because your workaround does not work at all.

On load, The A1 cell of this workbook is empty but it contains a list validation based on some cell values. When I typed “1 AAA” in this cell the OnCellErrorClientFunction handler displays the correct error message and seems to restore the cell value to the previous valid value (affected in the OnCellSelectedClientFunction handler). However, if I select another cell then go back to the A1 cell, cell value became “1 AAA” which is not a correct value according to the validation as if setInnerText(cell.children[0], lastselectvalue) does not write deeply the cell value.

Please consider this sample project (9.9 KB) and test the previous scenario…

Thanks,

@lswe,

Thanks for the sample project.

We will evaluate your sample project and get back to you soon.

@lswe,

Please check our test steps in the demo video attached, we think it is Ok. Could you capture a video and show us what steps you are performing to reproduce the issue. By the way, did you test our sample (.aspx and .cs files) we attached previously?
screen-recorder-1365-709_(new_7).zip (1.3 MB)

Did you test it on IE 11 ?

@lswe,

Please inform that are you able to test this scenario on browsers other than IE 11? We will proceed further once feedback is provided.

I’m not able to test this scenario on browsers other than IE 11. Because my web app was built to work only on IE 11… So could you please bring my a fix for this annoying issue ?

@lswe,

We found it uses extra data for IE, please use this sample code:
e.g
Sample code:

  function isie() {
            return (!!navigator.userAgent.match(/Trident\/7\./));

        }
        function onCellError(cell) {
                setTimeout(function () {
                    alert("the input is invalid!");
                }, 1000);
                this.setValid(cell);
                setInnerText(cell.children[0], lastselectvalue);
                if (isie()) { 
                    cell.myInnerText = lastselectvalue;
                }
            }

@lswe,

This is to inform you that we have fixed your issue (logged earlier as “CELLSNET-46197”) now. We will soon provide you the fixed version after performing QA and incorporating other enhancements and fixes.

The issues you have found earlier (filed as CELLSNET-46197) have been fixed in this update. This message was posted using BugNotificationTool from Downloads module by Amjad_Sahi

Hi,

Thanks for your answer and the workaround you gave me. However I found another issue. Please test the following scenario on IE 11 :

On load, The A1 cell of this workbook is empty but it contains a list validation based on some cell values. When I typed “1 AAA” in this cell the OnCellErrorClientFunction handler displays the correct error message and seems to restore the cell value to the previous valid value (affected in the OnCellSelectedClientFunction handler). Now with the workaround, if I select another cell then go back to the A1 cell, cell value seems to be correctly restored to the previous which is an empty value. But if I’m trying to change cell value with one of the dropdown value, I got the following error :

error happens, please check the below info:
Object reference not set to an instance of an object

Thanks for your help,

@lswe,

Thanks for sharing some details.

Could you provide us sample project (runnable) to show the issue. Also capture demo video to demonstrate the issue or steps involved, we will check it soon.

Hi,

Please use the following link for sample project and follow the previous scenario to replicate the issue

Please consider this sample project 2 (9.9 KB) and test the previous scenario…

@lswe,

We will evaluate your issue soon. Could you confirm if the issue is reproduced on IE11 only, did you try on other versions and other browser types (Google chrome, FireFox, etc.)?

Only on IE 11

@lswe,

Thanks for the confirmation.

I have logged a separate ticket with an id “CELLSNET-46323” for your issue. We will investigate and look into the issue. The ticket is logged as following:
CELLSNET-46323 - Data validation issue - Exception “Object reference not set to an instance of an object” when trying to change cell value with one of the dropdown value

Once we have an update on it, we will let you know here.

@lswe,

This is to inform you that we have fixed your issue (logged earlier as “CELLSNET-46323”) now. We will soon provide you the fixed version after performing QA and incorporating other enhancements and fixes.

@lswe,

Please try the attached acwmain.js file, it should fix your issue.

Let us know your feedback.

acwmain.2018.0906.zip (60.3 KB)

Could you please just send me the piece of code you modified in acwmain.js to fix this error ?

I don’t want to update the Gridweb dll in my project because it is a stable version and it could be risky to do that…

Thanks,

@lswe,

Well, you do not need to upgrade your Aspose.Cells.GridWeb.dll, you may try to replace your existing acwmain.js file with the provided file.

Let us know if it does not work.