Nov 21, 2017, 11:30 AM
[FIXED] [#1570] [4.5.0] Problems with ValidationStatus and RemoteVlidation
Hi Community !
Please check the code sample below:
i’m using Remotevalidation to validate an individual situation and StatusBar control + ValidationStatus for its presentation,
but when I’m writing a value on the textfield1, the validation does not work and throws the following error
I accept suggestions ideas or comments
Thank you for your help!
Please check the code sample below:
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Collections.Generic" %>
<script runat="server">
protected void TextField1_Validation(object sender, RemoteValidationEventArgs e)
{
Ext.Net.TextField theTextField = (Ext.Net.TextField)sender;
if (theTextField.Text == "Hola Mundo")
{
e.Success = true;
}
else
{
e.Success = false;
e.ErrorMessage = "'Hola Mundo' is valid value only";
}
System.Threading.Thread.Sleep(1000);
}
</script>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>Remote Validation - Ext.NET Examples</title>
<style type="text/css">
.x-status-error-list
{
z-index: 99999
}
.x-status-text
{
color : #777;
}
.x-status-busy
{
background : transparent url(images/saving.gif) no-repeat scroll 3px 0px !important;
padding-left : 25px !important;
}
</style>
<script type="text/javascript">
Ext.define('Ext.ux.statusbar.StatusBar', {
override: 'Ext.ux.statusbar.StatusBar',
clearStatus: function (o)
{
if (this.plugins != null)
{
for (var i = 0; i < App.StatusBar1.plugins.length; i++) {
var plugin = App.StatusBar1.plugins[i];
if (plugin instanceof Ext.ux.statusbar.ValidationStatus) {
plugin.errors.clear();
plugin.updateErrorList();
}
}
}
return this.callParent(arguments);
}
});
</script>
</head>
<body>
<form id="Form1" runat="server">
<ext:ResourceManager ID="ResourceManager1" runat="server" />
<ext:Window ID="Window1" runat="server"
Title="Remote Validation Form"
BodyPadding="5"
Frame="true"
Width="500"
DefaultAnchor="100%">
<Listeners>
<Close Handler="App.StatusBar1.plugins[0].msgEl.hide();" />
</Listeners>
<BottomBar>
<ext:StatusBar ID="StatusBar1" runat="server"
DefaultText="Ok"
IconCls="">
<Plugins>
<ext:ValidationStatus ID="ValidationStatus1" runat="server"
ShowText="Formulario presenta errores (Click Aqui para más Detalle)"
HideText="Click nuevamente para ocultar errores"
FormPanelID="FormPanel1"
ValidIcon="Accept"
ErrorIcon="Exclamation"/>
</Plugins>
</ext:StatusBar>
</BottomBar>
<TopBar>
<ext:Toolbar ID="Toolbar1" runat="server">
<Items>
<ext:ToolbarFill ID="ToolbarFill1" runat="server" />
<ext:Button runat="server" ID="Button1" Icon="Disk" ToolTip="Save Save Save Save" Disabled="true">
</ext:Button>
</Items>
</ext:Toolbar>
</TopBar>
<Items>
<ext:FormPanel ID="FormPanel1" runat="server"
BodyPadding="10"
Border="false"
DefaultAnchor="100%">
<Listeners>
<ValidityChange Handler="#{Button1}.setDisabled(!valid);" />
</Listeners>
<Items>
<ext:TextField ID="TextField1" runat="server"
FieldLabel="Server only validation"
MaxLength="50"
AllowBlank="false"
EnableKeyEvents="true"
IsRemoteValidation="true" >
<RemoteValidation OnValidation="TextField1_Validation" />
</ext:TextField>
</Items>
</ext:FormPanel>
</Items>
</ext:Window>
</form>
</body>
</html>
I’ve implemented a simple example, to illustrate what I mean about my problem, i’m using Remotevalidation to validate an individual situation and StatusBar control + ValidationStatus for its presentation,
but when I’m writing a value on the textfield1, the validation does not work and throws the following error
I accept suggestions ideas or comments
Thank you for your help!