zoukankan      html  css  js  c++  java
  • java_easyui体系之目录 [转]

    摘要:简单介绍form的提交方式、与validatebox的结合使用。 

    一:form简介

    Easyui中的form有两种提交方式、结合自己新添加的一种ajax提交方式、本文简单说明form的三种提交方式、和结合validatebox使用来校验基本信息。

    二:form提交

    以登录为例:下面是登录页面、注意要导入easyui所需要的css和js。

    要引入的css+js:

    <link rel="stylesheet" type="text/css"href="css/easyui/default/easyui.css">
    <link rel="stylesheet" type="text/css" href="css/easyui/icon.css">
    <link rel="stylesheet" type="text/css" href="css/easyui/demo.css">
    <script type="text/javascript" src="js/jquery.min.js"></script>
    <script type="text/javascript" src="js/jquery.easyui.min.js"></script>

    登录的div和表单:

    简单说明:

    1、登录是使用dialog来作为界面的、初始化dialog有几种方式——(1)使用class="easyui-dialog"定义、使用data-options="xxx"来定义dialog属性、这种适合只具有基本样式、不具有与后台交互功能的时候的页面使用。(2)使用js初始化、适合与后台交互的界面使用、(3)可以混合使用。

    1、通过ajax提交:

    loginAndregist = $('#loginAndregist').dialog({
        closable:false,
        modal:true,
        draggable:false,
        buttons:[{
            text:'注册',
            handler:function(){
                $('#regist').dialog('open');
            }
        },{
            text:'登录',
            handler:function(){
                if( $('#loginInputForm').form('validate')){
                    $.ajax({
                        url:'login_login.action',
                        data:$('#loginInputForm').serialize(),
                        cache:false,
                        dataType:'text',
                        success:function(r){
                            console.info(r);
                            if(r == "success"){
                                $('#loginAndregist').dialog('close');
                                $.messager.show({
                                    title : '提示',
                                    msg : '登录成功'
                                });
                            }else{
                                $.messager.alert('标题','用户名密码错误');   
                            }
                        }
                    });
                }
            }
        }],
    });
    View Code

    简单说明:if( $('#loginInputForm').form('validate')){...}是将form与其内部的validatebox绑定、可以使用validatebox提供的校验规则来校验输入。若不使用这个而直接使用ajax提交、则不会使用validatebox提供的校验规则、当然也可以自己加校验方式、onSubmit()。 

    2、通过先初始化form、再在点击登录触发函数中提交

    初始化form表单:

    //初始化登录表单
    loginInputForm = $('#loginInputForm').form({
        url:'login_login.action',
        success:function(r){
            console.info(r);
            if(r == "success"){
                $('#loginAndregist').dialog('close');
                $.messager.show({
                    title : '提示',
                    msg : '登录成功'
                });
            }else{
                $.messager.alert('标题','用户名密码错误');   
            }
        }
    });

    点击登录时提交表单:

    loginAndregist = $('#loginAndregist').dialog({
        closable:false,
        modal:true,
        draggable:false,
        buttons:[{
            text:'注册',
            handler:function(){
                $('#regist').dialog('open');
            }
        },{
            text:'登录',
            handler:function(){
                loginInputForm.submit();
            }
        }],
    });

    简单说明:这里不再需要像ajax一样添加一个校验的if、因为这种方式的form是与validatebox绑定的、会自动校验。

    3、直接在点击登录触发函数中提交

    loginAndregist = $('#loginAndregist').dialog({
        closable:false,
        modal:true,
        draggable:false,
        buttons:[{
            text:'注册',
            handler:function(){
                $('#regist').dialog('open');
            }
        },{
            text:'登录',
            handler:function(){
                if( $('#loginInputForm').form('validate')){
                    $('#loginInputForm').form('submit',{
                     url:'login_login.action',
                     onSubmit: function(){  
                         console.info('do some check !');
                      },
                          success : function(r){
                            console.info(r);
                            console.info(r);
                            if(r == "success"){
                                $('#loginAndregist').dialog('close');
                                $.messager.show({
                                    title : '提示',
                                    msg : '登录成功'
                                });
                            }else{
                                $.messager.alert('标题','用户名密码错误');   
                            }
                         }
                    });
                }
            }
        }],
    });

    $('#loginInputForm').form('submit',{...})、当点击登录按钮时会直接提交表单、红色部分可以对表单提交之前做一些操作、比如校验。

    三:form注意事项


    注意获取对象的不同、显示隐藏的时候、获取的是包含form表单的div、提交的是form。两者千万不要弄混了、所以使用jquery获取这两个节点时要注意id的区别、
    1、获取div的id用于将div初始化成dialog: $('#divId').dialog(...);
    2、获取div中的form的id用于初始化form表单:$('#formId').form(...);
    3、三种提交表单方式:(1)在div中使用ajax提交、(2)将初始化好的表单提交:$('#formId').form().submit();(3)在登录按钮触发函数中$('#formId').form('submit',{xxx})

    四:form提交网页完整(包括注册)

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
     
     
    <html>
       
        <base href="<%=basePath%>">
         
        <title>login</title>
     
        <link rel="stylesheet" type="text/css" href="css/easyui/default/easyui.css">
        <link rel="stylesheet" type="text/css" href="css/easyui/icon.css">
        <link rel="stylesheet" type="text/css" href="css/easyui/demo.css">
        <script type="text/javascript" src="js/jquery.min.js"></script>
        <script type="text/javascript" src="js/jquery.easyui.min.js"></script>
        <script type="text/javascript">
            /*
                注意获取对象的不同、显示隐藏的时候、获取的是包含form表单的div、提交的是form。两者千万不要弄混了、所以使用jquery获取这两个节点时要注意id的区别、
                1、获取div的id用于将div初始化成dialog:         $('#divId').dialog(...);
                2、获取div中的form的id用于初始化form表单:    $('#formId').form(...);
                3、三种提交表单方式:(1)在div中使用ajax提交、(2)将初始化好的表单提交:  $('#formId').form().submit();(3)在登录按钮触发函数中$('#formId').form('submit',{xxx})
            */
         
            //节点的引用、当被初始化一次之后、后面就可以直接拿来使用了
            var loginAndregist;
            var loginInputForm;
            var registForm;
            $(function(){
                //初始化登录窗口
                loginAndregist = $('#loginAndregist').dialog({
                    closable:false,
                    modal:true,
                    draggable:false,
                    buttons:[{
                        text:'注册',
                        handler:function(){
                            $('#regist').dialog('open');
                        }
                    },{
                        text:'登录',
                        handler:function(){
                            //loginInputForm.submit();
                             
                            if( $('#loginInputForm').form('validate')){
                                $.ajax({
                                    url:'login_login.action',
                                    data:$('#loginInputForm').serialize(),
                                    cache:false,
                                    dataType:'text',
                                    success:function(r){
                                        console.info(r);
                                        if(r == "success"){
                                            $('#loginAndregist').dialog('close');
                                            $.messager.show({
                                                title : '提示',
                                                msg : '登录成功'
                                            });
                                        }else{
                                            $.messager.alert('标题','用户名密码错误');   
                                        }
                                    }
                                });
                            }
                            /*
                            if( $('#loginInputForm').form('validate')){
                                $('#loginInputForm').form('submit',{
                                 url:'login_login.action',
                                 onSubmit: function(){  
                                     console.info('do some check !');
                                  },
                                      success : function(r){
                                        console.info(r);
                                        console.info(r);
                                        if(r == "success"){
                                            $('#loginAndregist').dialog('close');
                                            $.messager.show({
                                                title : '提示',
                                                msg : '登录成功'
                                            });
                                        }else{
                                            $.messager.alert('标题','用户名密码错误');   
                                        }
                                     }
                                });
                            }*/
                        }
                    }],
                });
                //初始化登录表单
                loginInputForm = $('#loginInputForm').form({
                    url:'login_login.action',
                    success:function(r){
                        console.info(r);
                        if(r == "success"){
                            $('#loginAndregist').dialog('close');
                            $.messager.show({
                                title : '提示',
                                msg : '登录成功'
                            });
                        }else{
                            $.messager.alert('标题','用户名密码错误');   
                        }
                    }
                });
                 
                //初始化注册窗口
                $('#regist').show().dialog({
                    modal:true,
                    closed:true,
                    draggable:true,
                    buttons:[{
                        text:'确认',
                        handler:function(){
                            $('#registForm').submit();
                        }
                    },{
                        text:'取消',
                        handler:function(){
                            $('#regist').dialog('close');
                        }
                    }],
                });
                 
                //初始化注册表单
                registForm = $('#registForm').form({
                    url:'login_regist.action',
                    success : function(r){
                        console.info(r);
                        if(r == "success"){
                            $('#regist').dialog('close');
                            $.messager.show({
                                title : '提示',
                                msg : '注册成功'
                            });
                        }else{
                            $.messager.show({
                                title : '警告',
                                msg : '注册失败'
                            });                     
                        }
                    }
                });
            });
        </script>
       
       
       
            <div id="loginAndregist" title="用户登录" style="300px;height:200px;">  
                <form id="loginInputForm" method="post" action="logion_login.action">
                    <table>
                        <tbody><tr>
                            <th align="right">username: </th>
                            <td><input type="text" class="easyui-validatebox" required="true" name="username"></td>
                        </tr>
                        <tr>
                            <th align="right">password: </th>
                            <td><input type="text" class="easyui-validatebox" required="true" name="password"></td>
                        </tr>
                    </tbody></table>
                </form>
            </div>
             
            <div id="regist" title="用户注册" style="300px;height:200px;display: none;">  
                <form id="registForm" method="post" action="logion_regist.action">
                    <table>
                        <tbody><tr>
                            <th align="right">username: </th>
                            <td><input type="text" class="easyui-validatebox" required="true" name="username"></td>
                        </tr>
                        <tr>
                            <th align="right">password: </th>
                            <td><input type="text" class="easyui-validatebox" required="true" name="password"></td>
                        </tr>
                        <tr>
                            <th align="right">confirmpassword: </th>
                            <td><input type="text" class="easyui-validatebox" required="true" name="confirmpassword"></td>
                        </tr>
                    </tbody></table>
                </form>
            </div>
      
  • 相关阅读:
    kvm虚拟化存储管理
    k8s集群部署
    docker版的zabbix部署
    docker进阶——数据管理与网络
    docker基础
    ceph对接openstack环境
    java命令--jmap命令使用
    JVM性能分析工具jstack介绍
    SkipList跳表基本原理
    NIO之Channel、Buffer
  • 原文地址:https://www.cnblogs.com/whtydn/p/5138375.html
Copyright © 2011-2022 走看看