Oct 14, 2013, 9:28 AM
2.3 Remote Validation issue
I think now readonly field don't do remote validation, but when I set a new value on field, the remote validation will be invoke again. I think the previous fixed (http://forums.ext.net/showthread.php...ote-validation) is not enough, I think if field is readonly, then remote validtion don't invoke any more unless I set field readonly to false(use setReadOnly(false)).
<%@ Page Language="C#" %>
<script runat="server">
protected void TextField_Validation(object sender, RemoteValidationEventArgs e)
{
if (Convert.ToString(e.Value) == "abc")
e.Success = true;
}
</script>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
</head>
<body>
<ext:ResourceManager ID="ResourceManager1" runat="server"></ext:ResourceManager>
<ext:Viewport ID="Viewport1" runat="server">
<Items>
<ext:FormPanel ID="FormPanel1" runat="server">
<Items>
<ext:TextField ID="TextField1" runat="server" FieldLabel="Name"
IsRemoteValidation="true" ReadOnly="true" Text="bcd">
<RemoteValidation OnValidation="TextField_Validation">
</RemoteValidation>
</ext:TextField>
</Items>
<Buttons>
<ext:Button runat="server" Text="Test"
OnClientClick="#{TextField1}.setValue('xyz');#{FormPanel1}.validate();"></ext:Button>
</Buttons>
</ext:FormPanel>
</Items>
</ext:Viewport>
</body>
</html>
Addtional, below code can stop invoke remote validation, but the loading icon will appear yet.<%@ Page Language="C#" %>
<script runat="server">
protected void TextField_Validation(object sender, RemoteValidationEventArgs e)
{
if (Convert.ToString(e.Value) == "abc")
e.Success = true;
}
</script>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
</head>
<body>
<ext:ResourceManager ID="ResourceManager1" runat="server"></ext:ResourceManager>
<ext:Viewport ID="Viewport1" runat="server">
<Items>
<ext:FormPanel ID="FormPanel1" runat="server">
<Items>
<ext:TextField ID="TextField1" runat="server" FieldLabel="Name"
IsRemoteValidation="true" ReadOnly="false" Text="bcd">
<RemoteValidation OnValidation="TextField_Validation" Before="return false;">
</RemoteValidation>
</ext:TextField>
</Items>
</ext:FormPanel>
</Items>
</ext:Viewport>
</body>
</html>
Last edited by devil; Oct 14, 2013 at 9:31 AM.
Reason: add ext.net version number