[asp.net] 利用ajax与easyui验证并提交表单

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <meta http-equiv="pragma" content="no-cache" />
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script src="/Scripts/loading.js" type="text/javascript"></script>
    <link href="/EasyUI/themes/icon.css" rel="stylesheet" type="text/css" />
    <link href="/EasyUI/themes/gray/easyui.css" rel="stylesheet" type="text/css" />
    <script src="/EasyUI/jquery.min.js" type="text/javascript"></script>
    <script src="/EasyUI/jquery.easyui.min.js" type="text/javascript"></script>
    <script src="/Scripts/distinguishBrowser.js" type="text/javascript"></script>
</head>
<body>
    <form id="fm" method="Post" οnsubmit="return validateForm();">
    <div style="margin-bottom: 20px; width: 300px;">
        <input id="uid" class="easyui-textbox" name="Id" type="text" style="width: 100%"
            data-options="label:'用户编号:',required:true">
    </div>
    <div style="margin-bottom: 20px; width: 300px;">
        <input id="uname" class="easyui-textbox" name="Name" style="width: 100%" data-options="label:'用户名:',required:true">
    </div>
    <div style="margin-bottom: 20px; width: 300px;">
        <input id="upassword" class="easyui-textbox" name="Password" style="width: 100%"
            data-options="label:'密码:',required:true">
    </div>
    <div style="margin-bottom: 20px; width: 300px;">
        <input id="email" class="easyui-textbox" name="Email" style="width: 100%" data-options="label:'电子邮箱:',required:true,validType:'email'">
    </div>
    <div style="margin-bottom: 20px; width: 300px;">
        <input id="phonenumber" class="easyui-textbox" name="Phonenumber" style="width: 100%"
            data-options="label:'电话号码:',required:true">
    </div>
    <div style="margin-bottom: 20px; width: 300px;">
        <input id="cc1" class="easyui-combobox" name="Role" label="角色" style="width: 100%"
            data-options="valueField:'id',textField:'text',url:'/Role/RoleHandler.ashx?action=GetAll',required:true">
    </div>
    <div style="margin-bottom: 20px; width: 300px;">
        <input id="cc2" class="easyui-combobox" name="JT" label="所属集团" style="width: 100%"
            data-options="valueField: 'id', textField: 'text', url: '/JT/JTHandler.ashx?action=GetAll',
                    onSelect: function(rec){
                        var url = '/GC/GCHandler.ashx?action=GetGC&jt=' + rec.id;
                        $('#cc3').combobox('reload', url);
                    },required:true" />
    </div>
    <div style="margin-bottom: 20px; width: 300px;">
        <input id="cc3" class="easyui-combobox" name="GC" label="所属工厂" style="width: 100%"
            data-options="valueField:'id',textField:'text', url: '/GC/GCHandler.ashx?action=GetAll',required:true">
    </div>
    </form>
    <div id="dlg-buttons">
        <a href="#" class="easyui-linkbutton" iconcls="icon-ok" οnclick="saveUser()">保存</a>
        <a href="#" class="easyui-linkbutton" iconcls="icon-cancel" οnclick="javascript:$('#dlg').dialog('close')">
            取消</a>
    </div>
    <script type="text/javascript">
        function saveUser() {
            if (getBrowserType() == "Chrome") {
                //ajax提交表单验证方式
                var validate = $("#fm").form('validate');
                if (!validate) {
                    $.messager.alert("提示", '请正确填写表单!', "", function () {
                        $("#fm").find(".validatebox-invalid:first").focus();
                    });
                    return false;
                }
                $.ajax({
                    url: '/User/UserHandler.ashx?action=Add',
                    type: "Post",
                    data: $("#fm").serialize(), //将表单序列化
                    success: function (data) {
                        data = eval('(' + data + ')');      //将一个json字符串解析成js对象
                        //ajax方式直接将后台的json字符串转换为json对象,即这里的data已经是json对象,不需要转换
                        $.messager.alert("提示", data.Message, 'info'); //显示后台信息
                        if (data.Success) {
                            location.href = '/User/Show.html';
                        }
                    },
                    error: function (XMLHttpRequest, textStatus, errorThrown) {
                        alert(XMLHttpRequest.status);
                        alert(XMLHttpRequest.readyState);
                        alert(textStatus);
                    }

                });
            } else {
                $('#fm').form('submit', {
                    url: '/User/UserHandler.ashx?action=Add',
                    onSubmit: function () {
                        //验证表单是否合法
                        return $(this).form('validate');
                    },
                    success: function (data) {
                        data = eval('(' + data + ')');      //将一个json字符串解析成js对象
                        $.messager.alert("操作提示", data.Message, 'info'); //提示后台错误信息
                        if (data.Success) {
                            location.href = '/User/Show.html';
                        }
                    }
                });
            }
        }
    </script>
</body>
</html>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值