zoukankan      html  css  js  c++  java
  • js表单提交,面向对象

    一.js表单验证之后再提交

    1.普通按钮onclick函数调用表单的submit()函数

      <input type=button name="submit1" value="登陆" onclick="check(this.form)"> 

    2.submit类型的input添加onclick函数,如果返回false,则继续处理事件,从而触发onsubmit函数;如果返回true,则停止处理事件。

       <input type=submit name="submit1" value="登陆" onclick="return check(this.form)"> 

    3.把onsubmit的检查放在form属性里

    <form action="login.do?act=login" method="post" onsubmit="return check(this)">

    4.ajax提交,用于对表单数据做些转换再提交

    二.js创建对象

    1.工厂模式

    function showColor(){
       alert(this.color);
      }
      
      function Car(){
       var ōcar = new Object();
       ocar.color = color;
       ocar.doors = door;
       ocar.showColor = showColor;
       return ocar;
      }

    var car1 = Car();
    var car2 = Car();
      调用此函数时将创建新对象,并赋予它所有的属性和方法。使用此函数可以创建2个属性完全相同的对象。当然我妹可以通过给它传递参数来改版这种方式。当然可以通过给它传递参数来改版这种方式。

    更简单的方式:

    return {

       "color":color,

       "doors":door,

       "showColor":showColor;

    }

    2.构造函数new出来

    function Car(color,door){
       this.color = color;
       this.doors = door;
       this.showColor = function(){
        alert(this.color)
       };
      }
      
      var car1 = new Car("red",4);
      var car2 = new Car("blue",4);

    3.原型方式(单例模式)

     function Car(){
     }
      
     Car.prototype.color = "red";
     Car.prototype.doors = 4;
     Car.prototype.arr = new Array("a","b");
     Car.prototype.showColor = function(){
         alert(this.color);
     }
    var x=new Car()
    var y=new Car()

    x和y指向同一个arr对象

    4.原型方式定义函数+构造函数定义成员变量

      function Car(color,door){
       this.color = color;
       this.doors = door;
       this.arr = new Array("aa","bb");
      }
      Car.prototype.showColor(){
       alert(this.color);
      }
      
      var car1 = new Car("red",4);
      var car2 = new Car("blue",4);
      
      car1.arr.push("cc");
      
      alert(car1.arr);  //output:aa,bb,cc
      alert(car2.arr);  //output:aa,bb

    5.动态原型方式

    动态原型的方式同混合的构造函数/原型方式原理相似。唯一的区别就是赋予对象方法的位置。

     function Car(color,door){
       this.color = color;
       this.doors = door;
       this.arr = new Array("aa","bb");
       
       if(typeof Car._initialized == "undefined"){
        Car.prototype.showColor = function(){
         alert(this.color);
        };
        Car._initialized = true;
       }
      }
  • 相关阅读:
    40.广搜练习:洪水
    40.广搜练习:洪水
    39.递推练习:   菲波那契数列(2)
    39.递推练习:   菲波那契数列(2)
    39.递推练习:   菲波那契数列(2)
    21世纪的信息化与20世纪的自动化
    一个文件夹就是一个信息系统
    团队的建设是部门管理目标的核心
    信息共享的另一种形式--复用
    如何工作体会
  • 原文地址:https://www.cnblogs.com/weiyinfu/p/5475065.html
Copyright © 2011-2022 走看看