84-85

模态编辑框

多层弹框设计

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <style>

        .hide{
            display: none;
        }

        .model{
            position: fixed;
            top: 50%;
            left: 50%;
            width: 500px;
            height: 400px;
            margin-left: -250px;
            margin-top: -250px;
            background-color: #eeeeee;
            z-index: 10;
        }

        .shadow{
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            opacity: 0.6;
            background-color: black;
            z-index: 9;
        }

    </style>

</head>
<body>

    <a onclick="addElement();">添加</a>
    <table border="1">
        <tr>
            <td>1.1.1.11</td>
            <td>80</td>
            <td>
                <a class="edit">编辑</a> | <a>删除</a>
            </td>
        </tr>
        <tr>
            <td>1.1.1.12</td>
            <td>80</td>
            <td>
                <a class="edit">编辑</a> | <a>删除</a>
            </td>
        </tr>
        <tr>
            <td>1.1.1.13</td>
            <td>80</td>
            <td>
                <a class="edit">编辑</a> | <a>删除</a>
            </td>
        </tr>
        <tr>
            <td>1.1.1.14</td>
            <td>80</td>
            <td>
                <a class="edit">编辑</a> | <a>删除</a>
            </td>
        </tr>
    </table>

    <div class="model hide">
        <div>
            <input type="text">
            <input type="text">
            <input type="text">
        </div>
        <div>
            <input type="button" value="取消" onclick="cancleModel();">
        </div>
    </div>

    <div class="shadow hide"></div>

    <script src="jquery-1.12.4.js"></script>

    <script>
        function addElement() {
            $(".model,.shadow").removeClass("hide");    //当点击添加时触发函数,将model和shadow标签中的hide标签移出,就会显弹出信息
        }
        function cancleModel() {
            $(".model,.shadow").addClass("hide");   //点取消,添加hide,隐藏弹出的信息
        }

    </script>

</body>
</html>

84-85

内容操作:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

    <div id="i1">asdfadfasdf<a>asdfasd</a></div>

    <script src="jquery-1.12.4.js"></script>

</body>
</html>

84-85

上图:通过dom可以获取标签的html和text内容

84-85

上图:通过jQuery来获取表现的html和text内容

84-85

上图:不添加参数是获取值,添加参数就是赋值。让html等于p标签,且修改内容等于123123

84-85

上图:html可以解析标签,text不解析标签,将<p></p>当做内容展现出来了。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

    <div id="i1">asdfadfasdf<a>asdfasd</a></div>

    <input id="i2" type="text">

    <script src="jquery-1.12.4.js"></script>

</body>
</html>

84-85

上图:input标签通过.value获取填写的值

84-85

上图:通过jQuery获取input标签的值

84-85

上图:jQuery设置值

$().val() 不知可以获取和设置input标签,只要dom.value能做的,jQuery的val都能操作。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <style>

        .hide{
            display: none;
        }

        .model{
            position: fixed;
            top: 50%;
            left: 50%;
            width: 500px;
            height: 400px;
            margin-left: -250px;
            margin-top: -250px;
            background-color: #eeeeee;
            z-index: 10;
        }

        .shadow{
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            opacity: 0.6;
            background-color: black;
            z-index: 9;
        }

    </style>

</head>
<body>

    <a onclick="addElement();">添加</a>
    <table border="1">
        <tr>
            <td>1.1.1.11</td>
            <td>80</td>
            <td>
                <a class="edit">编辑</a> | <a>删除</a>
            </td>
        </tr>
        <tr>
            <td>1.1.1.12</td>
            <td>80</td>
            <td>
                <a class="edit">编辑</a> | <a>删除</a>
            </td>
        </tr>
        <tr>
            <td>1.1.1.13</td>
            <td>80</td>
            <td>
                <a class="edit">编辑</a> | <a>删除</a>
            </td>
        </tr>
        <tr>
            <td>1.1.1.14</td>
            <td>80</td>
            <td>
                <a class="edit">编辑</a> | <a>删除</a>
            </td>
        </tr>
    </table>

    <div class="model hide">
        <div>
            <input name="hostname" type="text" value="">
            <input name="port" type="text" value="">

        </div>
        <div>
            <input type="button" value="取消" onclick="cancleModel();">
        </div>
    </div>

    <div class="shadow hide"></div>

    <script src="jquery-1.12.4.js"></script>

    <script>
        function addElement() {
            $(".model,.shadow").removeClass("hide");
        }
        function cancleModel() {
            $(".model,.shadow").addClass("hide");
        }

        $('.edit').click(function () {
            $(".model,.shadow").removeClass("hide");
            var tds = $(this).parent().prevAll();
            console.log(tds[0]);    //打印tds的第0个参数
            console.log(tds[1]);
        })

    </script>

</body>
</html>

84-85

上图:因为prevall,所以是从编辑开始向左查询,编辑左边下标0的内容是80,下标1的内容是1.1.1.11

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <style>

        .hide{
            display: none;
        }

        .model{
            position: fixed;
            top: 50%;
            left: 50%;
            width: 500px;
            height: 400px;
            margin-left: -250px;
            margin-top: -250px;
            background-color: #eeeeee;
            z-index: 10;
        }

        .shadow{
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            opacity: 0.6;
            background-color: black;
            z-index: 9;
        }

    </style>

</head>
<body>

<a onclick="addElement();">添加</a>
<table border="1">
    <tr>
        <td>1.1.1.11</td>
        <td>80</td>
        <td>
            <a class="edit">编辑</a> | <a>删除</a>
        </td>
    </tr>
    <tr>
        <td>1.1.1.12</td>
        <td>80</td>
        <td>
            <a class="edit">编辑</a> | <a>删除</a>
        </td>
    </tr>
    <tr>
        <td>1.1.1.13</td>
        <td>80</td>
        <td>
            <a class="edit">编辑</a> | <a>删除</a>
        </td>
    </tr>
    <tr>
        <td>1.1.1.14</td>
        <td>80</td>
        <td>
            <a class="edit">编辑</a> | <a>删除</a>
        </td>
    </tr>
</table>

<div class="model hide">
    <div>
        <input name="hostname" type="text">
        <input name="port" type="text">

    </div>
    <div>
        <input type="button" value="取消" onclick="cancleModel();">
    </div>
</div>

<div class="shadow hide"></div>

<script src="jquery-1.12.4.js"></script>

<script>
    function addElement() {
        $(".model,.shadow").removeClass("hide");
    }
    function cancleModel() {
        $(".model,.shadow").addClass("hide");
        $('.model input[type="text"]').val("");
    }

    $('.edit').click(function () {
        $(".model,.shadow").removeClass("hide");
        var tds = $(this).parent().prevAll();
        var port = $(tds[0]).text();
        var host = $(tds[1]).text();
        $('.model input[name="hostname"]').val(host);
        $('.model input[name="port"]').val(port);
    })

</script>

</body>
</html>

代码说明:

$('.model input[type="text"]').val("");  当点击编辑后,在去点击添加,弹出的弹框中不是空数据,而是之前点击的编辑数据,所以这里在点取消后要将框中的内容清除。

var port = $(tds[0]).text();  根据下标获取文本内容
var host = $(tds[1]).text();

$('.model input[name="hostname"]').val(host);   使用val()进行赋值
$('.model input[name="port"]').val(port);
上一篇:84 内存四区


下一篇:看完这84道面试题,不信你找不到工作(java)