gpt4 book ai didi

c# - 直接点击事件触发前的表单验证

转载 作者:行者123 更新时间:2023-11-30 22:17:00 25 4
gpt4 key购买 nike

我有一个按钮,我想在直接点击事件触发之前形成验证(客户端)。我尝试了很多方法但都失败了。

** 我已经这样设置了文本框。

 <ext:TextField ID="Ad" runat="server" FieldLabel="Dem ad" Flex="1" AllowBlank="false" CausesValidation="true"> </ext:TextField>

但即使在文本框检查之前仍然直接触发


<ext:Button ID="Button1" runat="server" Text="save" Icon="Disk">
<DirectEvents>

<Click OnEvent="Dem">
<Confirmation ConfirmRequest="true" Title="Title" Message="are u sure you want to update..." />

</Click>

</DirectEvents>


</ext:Button>

最佳答案

有几个选项。

  1. 您可以从 DirectEvent 的 Before 处理程序或同一个监听器返回 false。

    protected 无效提交(对象发送者,DirectEventArgs e) { X.Msg.Alert("提交", "已提交").Show(); }

    Ext.NET v2 示例

        <ext:FormPanel ID="FormPanel1" runat="server">
    <Items>
    <ext:TextField runat="server" AllowBlank="false" />
    </Items>
    </ext:FormPanel>

    <ext:Button runat="server" Text="Submit">
    <%--<Listeners>
    <Click Handler="return false;" /> it has the same effect as returning false from a DirectEvent's Before.
    </Listeners>--%>
    <DirectEvents>
    <Click OnEvent="Submit" Before="return App.FormPanel1.isValid();" />
    </DirectEvents>
    </ext:Button>
    </form>

  2. 另一种方法是使用 FormBind .如果 FormPanel 无效,它会自动禁用组件。一个组件应该属于一个 FormPanel。

    protected 无效提交(对象发送者,DirectEventArgs e) { X.Msg.Alert("提交", "已提交").Show(); }

    Ext.NET v2 示例

        <ext:FormPanel ID="FormPanel1" runat="server" Width="200">
    <Items>
    <ext:TextField runat="server" AllowBlank="false" />
    </Items>
    <Buttons>
    <ext:Button runat="server" Text="Submit" FormBind="true">
    <DirectEvents>
    <Click OnEvent="Submit" />
    </DirectEvents>
    </ext:Button>
    </Buttons>
    </ext:FormPanel>
    </form>

  3. 您可以收听 FormPanel 的 ValidityChange事件以应用一些自定义操作。

关于c# - 直接点击事件触发前的表单验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17001045/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com