领悟旧事

Learned Helplessness
分类新闻>>技术文章>>
.net对话框确定不刷新页面而能提交数据
来源:http://www.xx0594.com/
时间:2017-5-9
作者:  浏览人数:978
[Size=3]在做项目时,遇到一个问题,在提交一个数据时,先要判断名字、题目、验证码等的正确性,如果不正确,就弹出对话框,如果正确,就提交数据。
    第一步,起初想用UpdatePanel来实现。实现是可以,但有一个问题,就是获取用户输入的内容时(TextBox.Text)时,必须点击2次才能获取。
    经过无数次的折腾,才发现判断一些元素为空,根本不需要UpdatePanel。只要利用OnClientClick这个事件就可以了。该事件在用户本地直接实现,而不需要提交交到Server上。也就是说,OnClientClick优先于OnClick。OnClientClick事件一般用JS来实现。
[color=#0000FF]
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
    <script type="text/javascript" src="/Scripts/XhEditor/jquery-1.4.4.min.js"></script>
    <script type="text/javascript" src="/Scripts/XhEditor/xheditor-1.1.14-zh-cn.min.js"></script>    
    <link rel="stylesheet" href="/Scripts/XhEditor/common.css" type="text/css" media="screen" />
    <link href="/Scripts/jquery-easyui-1.3.2/themes/default/easyui.css" rel="stylesheet" type="text/css" />
    <link href="/Scripts/jquery-easyui-1.3.2/themes/icon.css" rel="stylesheet" type="text/css" />
    <script src="/Scripts/jquery-1.8.0.min.js" type="text/javascript"></script>
    <script src="/Scripts/jquery-easyui-1.3.2/jquery.easyui.min.js" type="text/javascript"></script>
<script type="text/javascript">
    function checkLogin() {
        var NameText = $("#MainContent_NameText");
        if (NameText.val() == "") {
            ShowMsg("请输入作者名字!");
            NameText.focus();
            return false;
        }
        var title = $("#MainContent_TitleText");
        if (title.val() == "") {
            ShowMsg("请输入文章标题!");
            title.focus();
            return false;
        }
        var checkCode = $("#MainContent_CheckCodeTextBox");       
        if (checkCode.val() == "") {
            ShowMsg("请输入验证码!");
            checkCode.focus();
            return false;
        }
        var xhedit = $("#MainContent_PingLun_TextBox");
        if (xhedit.val() == "") {
            ShowMsg("内容不能为空!");
            xhedit.focus();
            return false;
        }
        return true;
    }
    function changeCC() {
        $("#CheckCode_Img").attr("src", "CheckCode.aspx?t=" + new Date().getTime());
    }
    function ShowMsg(message) {
        $.messager.show({ title: "系统提醒", msg: message });
    }
    </script>
    <asp:Label ID="Name_Lbl" runat="server" Text="姓名:" Font-Size="12pt"></asp:Label>
    <input id="NameText"  type="text" runat="server"/><br />
    <asp:Label ID="Title_Lbl" runat="server" Text="题目:" Font-Size="12pt"></asp:Label>
    <input id="TitleText" type="text" runat="server"/>
    <asp:ListBox ID="ZiDuan_ListBox" runat="server"  Rows="1" Font-Size="12" AutoPostBack="false">
        <asp:ListItem>写注释</asp:ListItem>
        <asp:ListItem>写赏析</asp:ListItem>
    </asp:ListBox>
    <br />
    <asp:Label ID="Label1" runat="server" Text="验证码:" Font-Size="12pt"></asp:Label>
    <%--<input id="CheckCodeText" type="text"  runat="server" maxlength="4" />--%>
    <asp:TextBox ID="CheckCodeTextBox" runat="server"></asp:TextBox>
    <img id="CheckCode_Img" style="vertical-align: middle;" src="CheckCode.aspx" onclick="changeCC()" />
    <br />    <br />
    <textarea class="xheditor {forcePtag:false}" id="PingLun_TextBox" name="PingLun_TextBox" rows="35" cols="77" runat="server">
关闭窗口
 访问量:507989
任何第三方若要引用、转摘本站信息,均需征得本站书面同意,否则视为侵权。本站信息为个人观点,若因引用本站信息而产生的任何情况,均与本站无关。Email:linmutou@163.com
闽ICP备14017840号-2