• js学习总结----crm客户管理系统之前端页面开发及数据渲染


    具体代码如下:

    index.html

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <link rel="stylesheet" href="css/index.css" charset='utf-8'>
    </head>
    <body>
        <div class='box'>
            <a href="add.html" class='link'>增加客户</a>
            <h2 class='head'>
                <span class='w50'>编号</span>
                <span class='w150'>姓名</span>
                <span class='w50'>年龄</span>
                <span class='w200'>电话</span>
                <span class='w200'>地址</span>
                <span class='w150'>操作</span>
            </h2>
            <ul class='list' id='list'>
                <!-- <li>
                    <span class='w50'>1</span>
                    <span class='w150'>xxx</span>
                    <span class='w50'>25</span>
                    <span class='w200'>xxxxxxxxx</span>
                    <span class='w200'>xxxxxxxxxxx</span>
                    <span class='w150 control'>
                        <a href="">修改</a>
                        <a href="">删除</a>
                    </span>
                </li> -->
            </ul>
        </div>
        <script charset='utf-8' type='text/javascript' src='js/ajax.js'></script>
        <script charset='utf-8' type='text/javascript'>
            var oList = document.getElementById('list');
            //首先获取所有的客户信息,完成页面的数据绑定
            var customModule = (function(){
                //DELETE CUSTOM
                function removeCustom(){
                    oList.onclick = function(e){
                        e = e || window.event;
                        var tar = e.target || e.srcElement,
                            tarTag = tar.tagName.toUpperCase();
                        if(tarTag==="A" && tar.innerHTML ==="删除"){
                            var customId = tar.getAttribute("customId");
                            var flag = window.confirm("确定要删除编号为["+customId+"]的客户吗?");
                            if(flag){
                                ajax({
                                    url:"/removeInfo?id="+customId,
                                    success:function(jsonData){
                                        if(jsonData && jsonData.code===0){
                                            oList.removeChild(tar.parentNode.parentNode);
                                            return;
                                        }
                                        alert(jsonData.msg);
                                    }
                                })
                            }
                        }    
    
                    }
                }
                //BIND HTML
                function bindHTML(data){
                    var str = "";
                    for(var i = 0;i<data.length;i++){
                        var curData = data[i];
                        str+='<li>';
                            str+='<span class="w50">'+curData["id"]+'</span>';
                            str+='<span class="w150">'+curData["name"]+'</span>';
                            str+='<span class="w50">'+curData["age"]+'</span>';
                            str+='<span class="w200">'+curData["phone"]+'</span>';
                            str+='<span class="w200">'+curData["address"]+'</span>';
                            str+='<span class="w150 control">';
                                str+='<a href="add.html?id='+curData["id"]+'">修改</a>';
                                str+='<a href="javascript:;" customId = "'+curData["id"]+'">删除</a>';
                            str+="</span>"
                        str+='</li>';
                    }
                    oList.innerHTML = str;
                }
                //SEND AJAX GET DATA
                function init(){
                    ajax({
                        url:"/getList",
                        success:function(jsonData){
                            if(jsonData && jsonData.code==0){
                                var data = jsonData.data;
                                bindHTML(data);
                                removeCustom();
                            }
                        }
                    })
                }
                return{
                    init:init
                }
            })()
            customModule.init();
        </script>
    </body>
    </html>

    add.html

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <link rel="stylesheet" href="css/index.css" charset='utf-8'>
    </head>
    <body>
        <div class='box2'>
            <div>
                <span>姓名:</span>
                <input type="text" id='userName'>
            </div>
            <div>
                <span>年龄:</span>
                <input type="text" id='userAge'>
            </div>
            <div>
                <span>电话:</span>
                <input type="text" id='userPhone'>
            </div>
            <div>
                <span>地址:</span>
                <input type="text" id='userAddress'>
            </div>
            <div class='submit' id='submit'>提交</div>
        </div>
        <script charset='utf-8' type='text/javascript' src='js/ajax.js'></script>
        <script charset='utf-8' type='text/javascript'>
            String.prototype.queryURLParameter = function(){
                //PARAMETER
                var obj = {},
                    reg = /([^?=&#]+)=([^?=&#]+)/g;
                this.replace(reg,function(){
                    var key = arguments[1],
                        value = arguments[2];
                    obj[key] = value;
                });
                 //->HASH
                // reg = /#([^?=&#]+)/;
                // if (reg.test(this)) {
                //     obj['hash'] = reg.exec(this)[1];
                // }
                // return obj;
    
            }
            var userName = document.getElementById("userName");
            var userAge = document.getElementById("userAge");
            var userPhone = document.getElementById("userPhone");
            var userAddress = document.getElementById("userAddress");
            var submit = document.getElementById("submit");
            //判断一下是修改还是增加:如果URL的后面传递了ID值就是修改,否则就是增加,这样的话我们加载页面的第一件事情就是获取URL后面传递进来的ID值
            var urlObj = window.location.href.queryURLParameter(),
                customId = urlObj["id"],
                isFlag = typeof customId === "undefined" ? false : true;//是否为修改操作 true代表修改 false代表增加
            
            //如果是修改的话,我们首先需要把对应的客户的信息获取到,并且增加到对应的文本框中
            if(isFlag){
                ajax({
                    url:'/getInfo?id='+customId,
                    success:function(jsonData){
                        if(jsonData && jsonData.code===0){
                            var data = jsonData["data"];
                            userName.value = data["name"];
                            userAge.value = data["age"];
                            userPhone.value = data["phone"];
                            userAddress.value = data["address"]
                        }
    
                    }
                })
            }
            //点击提交按钮的时候不一定是增加也可能是修改
            submit.onclick = function(){
                var obj = {
                    name:userName.value,
                    age:userAge.value,
                    phone:userPhone.value,
                    address:userAddress.value
                }
                //update
                if(isFlag){
                    obj.id = customId;
                    ajax({
                        url:'/updateInfo',
                        type:"post",
                        data:JSON.stringify(obj),
                        success:function(jsonData){
                            if(jsonData && jsonData.code===0){
                                window.location.href="index.html";
                                return;
                            }
                            alert(jsonData.msg);
                        }
                    })
                    return;
                }
                //add
                ajax({
                    url:"/addInfo",
                    type:"post",
                    data:JSON.stringify(obj),//请求主体中的内容是JSON格式的字符串
                    success:function(jsonData){
                        if(jsonData && jsonData.code==0){
                            //成功后跳转回首页
                            window.location.href = "index.html";
                            return;
                        }
                        alert(jsonData.msg);
                    }
                })
            }
        </script>
    </body>
    </html>

    custom.json(模拟后台数据)

    [{"name":"a sd","age":"sa ","phone":"da s","address":"sd ","id":2}]

    最终效果:

    这个只是一个非常简单的demo,没有很复杂。

  • 相关阅读:
    VScode中Python的交互式命令环境使用笔记
    jmeter beanshell判断响应的json串,参数的值是否正确;
    类和类的继承 实现关系;
    类与类依赖关系,实例;
    类与类包含关系,实例;
    java中有package的编译执行;java编译乱码;
    java 类与类之间的关系,方法重写与方法重载的区别
    beanshell sampler构造响应数据;
    Scanner类及其中方法的使用;
    java 构造方法 代码块 this
  • 原文地址:https://www.cnblogs.com/diasa-fly/p/7278230.html
Copyright © 2020-2023  润新知