FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 2806|回复: 0
打印 上一主题 下一主题

解决OnClientClick中无论是返回true或false,都依然执行后台代码

[复制链接]
跳转到指定楼层
楼主
发表于 2015-2-9 14:37:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 zy32002 于 2015-2-9 14:41 编辑

有时写js代码验证数据,需要在OnClientClick中执行,如果符合条件执行后台代码,不符合则不触发后台代码。
刚开始的时候无论返回true或false都会执行后台代码(asp.net写法),看了html源文件才明白,fineui不是这样的逻辑。
故分享解决方法:

======解决方法如下======
页面:
<body>
    <form id="form1" runat="server">
    <fageManager runat="server"/>
        <f:TextBox runat="server" ID="tb1" EmptyText="输入123为非法!"/>
        <f:Button runat="server" ID="btn1" Text="输入" OnClientClick=“if(yanzheng()) { alert('非法'); return;}”></f:Button>
    </form>
</body>
</html>
<script>
    function yanzheng() {
        return (F('<%=tb1.ClientID%>').getValue() == "123");
    }
</script>


后台就一个button方法:
protected void _btn1_OnClick(object sender, EventArgs e)
        {
            Alert.Show("后台方法");
        }

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-11-28 12:47 , Processed in 0.042148 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表