当前位置: 首页 > news >正文

html+CSS+js部分基础运用15

1、完成输入框内容的实时反向输出。

2、银行账户余额变动自动通知项目。

设计要求:单击按钮后,余额按照输入框的数额减少,同时将按钮式的提示信息(金额)同步改变。利用侦听属性实现余额发生变化时发出提示信息,同时记录每次支出明细,每笔记录包含支取次数,支取金额、余额等信息。

3、学生信息采集

① 定义Vue实例,分别完成el、data、methods、watch等选项的配置

  1. 定义data,分别定义为name、province、city、street、address等初始值(为空)
  2. 定义methods选项。在其中定义getAddress()方法,其功能是讲变化的省份、城市、县、街道信息组合起来,赋值个家庭地址
  3. 定义watch选项。在其中定义handler()方法,并使用immediate/deep等属性,设置他们的值为true,立即触发视图更新,并深度侦听相关属性值的变化。分别定义province、city、street等属性,将新值赋值给相关属性,立即渲染。

② 信息采集。分别通过表单输入获取省份、城市、县、街道等信息,只要其中有一个值发生变化,都需要绑定keyup事件,调用getAddress()方法,触发更新家庭地址。

  • 1.

    <div id="app">

        <hr>

        输入内容:<input type="text" v-model="message"><br>

        反转内容:{{message.split('').reverse().join('')}}

    </div>

  • 借助message.split('').reverse().join('')完成输入框内容的实时反向输出。
  • 2.

  new Vue({

            el:'#app',

            data:{

               

                money1:100000,

                money2:500,

                money3:100000,

                sum:0,      

            },

            watch:{

                money3:{

                    handler:function(newValue,oldValue){

                        alert("账户余额由"+oldValue+"元变为"+newValue+"");

                        console.log("账户余额由"+oldValue+"元变为"+newValue+"")

                    }

                }

               

                       

                   

               

            },

            methods:{

                updata:function(){

                    this.money3=this.money3-this.money2;

                    this.money1=this.money3;

                    this.sum=this.sum+1;

                    var objSelect=document.getElementById("number8");  

                    objSelect.focus();

                    var s=null;

                    s=""+this.sum+"次,支取"+this.money2+"元,余额为"+this.money1;

                    objSelect.options.add(new Option(s,));

                    this.money2=0;        

                   

                },

  • 借助vue框架监听加methods中的方法完成银行账户余额变动自动通知项目。
  • 3.

    <script>

        new Vue({

            el:"#app",

            data:{              

               

                    province:'',              

                    city:'',

                    street:'',

                    address:'',  

                           

            },

            watch:{

                province:{

                    handler: function (newValue, oldValue) {

                    console.log("对象记录:新值:"+newValue + "--------- 旧值:"+oldValue)

                },

                }

            },

            methods:{

                getAddress:function(){

                   this.address=this.province+" "+this.city+" "+this.street;

               }

            }

        })

    </script>

  • 借助Vue框架watch方法和methods方法完成大部分功能。

1

2

3

JavaScript使得信息和用户之间不仅只是一种显示和浏览的关系,而是实现了一种实时的、动态的、可交互的表达能力。从而基于CGI静态的HTML、页面将被可提供动态实时信息并可监视信息变化。

1.

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Document</title>

    <script src="vue.js"></script>

</head>

<body>

    <div id="app">

        <hr>

        输入内容:<input type="text" v-model="message"><br>

        反转内容:{{message.split('').reverse().join('')}}

    </div>

    <script>

        new Vue({

            el:'#app',

            data:{

                message:''

            }

        })

    </script>

</body>

</html>

2

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Document</title>

    <script src="vue.js"></script>

</head>

<body>

    <div id="app">

        <h3>银行账户余额变更通知</h3>

        余额为:{{money1}}<br>

        支取人民币为:<input type="text" v-model="money2"><button v-on:click="updata">支取{{money2}}</button><br>

        支取后人民币余额为:{{money3}}<br>

        <h3>以下是支出明细账</h3>

        <hr size="2">

        <table>

            <tr>

                <td rowspan="3">

        <select name="number7" id="number8" size="2" οnfοcus=”this.select()” οnmοuseοver=”this.focus()”>

        </select>

                </td>

            </tr>

        </table>

    </div>

    <script>

       

        new Vue({

            el:'#app',

            data:{

               

                money1:100000,

                money2:500,

                money3:100000,

                sum:0,      

            },

            watch:{

                money3:{

                    handler:function(newValue,oldValue){

                        alert("账户余额由"+oldValue+"元变为"+newValue+"");

                        console.log("账户余额由"+oldValue+"元变为"+newValue+"")

                    }

                }

               

                       

                   

               

            },

            methods:{

                updata:function(){

                    this.money3=this.money3-this.money2;

                    this.money1=this.money3;

                    this.sum=this.sum+1;

                    var objSelect=document.getElementById("number8");  

                    objSelect.focus();

                    var s=null;

                    s=""+this.sum+"次,支取"+this.money2+"元,余额为"+this.money1;

                    objSelect.options.add(new Option(s,));

                    this.money2=0;        

                   

                },

      }

            }

        )

    </script>

</body>

</html>

3.

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Document</title>

    <script src="vue.js"></script>

</head>

<body>

    <div id="app">

        <form action="">

            <fieldset>

                <legend align="center">学生地址信息采集</legend>

                姓名:<input type="text" v-model="name"><br>

                <hr>

                省份:<input type="text" v-model="province" v-on:keyup="getAddress()"><br>

                城市:<input type="text" v-model="city" v-on:keyup="getAddress()"><br>

                县、区或街道:<input type="text" v-model="street" v-on:keyup="getAddress()"><br>

                家庭地址:<input type="text" v-model="address" v-on:keyup="getAddress()"><br>

                <input type="submit" value="提交">&nbsp;&nbsp;&nbsp;<input type="reset" value="重置">

               

            </fieldset>

        </form>

    </div>

    <script>

        new Vue({

            el:"#app",

            data:{              

               

                    province:'',              

                    city:'',

                    street:'',

                    address:'',  

                           

            },

            watch:{

                province:{

                    handler: function (newValue, oldValue) {

                    console.log("对象记录:新值:"+newValue + "--------- 旧值:"+oldValue)

                },

                }

            },

            methods:{

                getAddress:function(){

                   this.address=this.province+" "+this.city+" "+this.street;

               }

            }

        })

    </script>

</body>

</html>

相关文章:

  • C# 判断字符串不等于空的示例
  • AdminController
  • 【面试笔记】单片机软件工程师,工业控制方向(储能)
  • Windows下载安装RabbitMQ客户端(2024最新篇)
  • 【CMake系列】09-cmake install 一般文件 文件夹 源代码
  • 必应bing国内广告怎样开户投放呢?
  • dotenv 配置踩坑-显示undefined
  • gitlab-jh的docker容器自动退出/gitlab镜像版本/升级问题
  • 安卓手机APP开发_____通过设备管理政策增强安全性
  • python中的预编译正则表达式
  • 03--nginx架构实战
  • Matlab解决矩阵微分方程建模(代码开源)
  • elasticsearch安装与使用(2)-基于term匹配的简单搜索引擎搭建
  • debian常用命令
  • 一键开启:盲盒小程序里的梦幻奇遇
  • [ JavaScript ] 数据结构与算法 —— 链表
  • 【跃迁之路】【699天】程序员高效学习方法论探索系列(实验阶段456-2019.1.19)...
  • Android组件 - 收藏集 - 掘金
  • ES2017异步函数现已正式可用
  • Fastjson的基本使用方法大全
  • Go 语言编译器的 //go: 详解
  • HTTP 简介
  • Intervention/image 图片处理扩展包的安装和使用
  • java正则表式的使用
  • mysql innodb 索引使用指南
  • PHP 程序员也能做的 Java 开发 30分钟使用 netty 轻松打造一个高性能 websocket 服务...
  • python3 使用 asyncio 代替线程
  • Redash本地开发环境搭建
  • underscore源码剖析之整体架构
  • 计算机常识 - 收藏集 - 掘金
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 驱动程序原理
  • 实现简单的正则表达式引擎
  • gunicorn工作原理
  • LevelDB 入门 —— 全面了解 LevelDB 的功能特性
  • Linux权限管理(week1_day5)--技术流ken
  • 从如何停掉 Promise 链说起
  • 关于Android全面屏虚拟导航栏的适配总结
  • #AngularJS#$sce.trustAsResourceUrl
  • $ git push -u origin master 推送到远程库出错
  • (2)空速传感器
  • (3)STL算法之搜索
  • (webRTC、RecordRTC):navigator.mediaDevices undefined
  • (三)elasticsearch 源码之启动流程分析
  • (四)JPA - JQPL 实现增删改查
  • (四)图像的%2线性拉伸
  • (转)ObjectiveC 深浅拷贝学习
  • (转载)Linux 多线程条件变量同步
  • .NET CORE 3.1 集成JWT鉴权和授权2
  • .NET Core使用NPOI导出复杂,美观的Excel详解
  • .net 打包工具_pyinstaller打包的exe太大?你需要站在巨人的肩膀上-VC++才是王道
  • .NET/C# 的字符串暂存池
  • .net6+aspose.words导出word并转pdf
  • .NET开发不可不知、不可不用的辅助类(三)(报表导出---终结版)
  • .NET面试题解析(11)-SQL语言基础及数据库基本原理