A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 厦门校区   /  2018-5-18 18:24  /  7187 人查看  /  60 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 AsusCoder 于 2018-5-19 12:32 编辑

姓名:曾耀峰    今天上课时忽然注意到老师每次写一个案例都会写需求分析文档。这个不单单是笔记,以后在开发过程中我们也会写技术文档。这个好像是《软件开发工程》所要掌握的内容。所以,这次的总结想模仿一下技术文档来写。
    今天的核心内容是JS事件和DOM元素操作。  通过今天学习的案例来说明DOM知识点的使用。这里通过模仿上课视频中的项目需求分析来对所做的案例进行总结。
    一、案例1、案例3:表单的本地校验版本2:
    1.需求分析:

    在一张用户注册表中,校验用户输入的信息是否符合规定。由如下信息输入:用户名、密码、确认密码、Email、户籍信息。请校验用户输入的信息是否正确,并给与方便的提示。校验规则如下:
   
    用户名:不能为空
    密码:不能少于6位
    确认密码:确认密码与密码需要相同
    Email:一个合法的Email字段
    户籍信息:当在省份选择框中,选择省份完省份后,在市区选择框中会自动生成该省的所有市区项。
   
    在核对以上信息正确后,点击“注册”按钮提交表单

    2.技术分析:

     1)实现形式:当用户输入完一个信息后,在输入项后面会显示用户输入的信息所得到的校验结果,字体红色表示不通过,绿色表示通过;
     2)实现方法:
     (1)通过JS事件机制中的获取焦点事件onfocus和失去焦点事件onblur这两个方法调用JS函数运行。
     (2)在JS函数中使用DOM获取元素方法document.getElementById("id"),获取用户输入的信息。与校验规则进行判断。
     (3)在HTML中的每项输入框后面添加一个<span>块状标签,其id值设为输入框的id+Span。该<span>标签用来接受校验的结果
     (4)在注册提交按钮添加属性onSubmit ="return  校验方法" 所有信息都校验通过时返回ture.表单方可提交。
     
    3.实现细节:

      1).输出结果到 span标签:使用innerHTML方法:这个方法是js两个输出方法之一,可以往所指定的标签中输出内容。输出的内容可以是文字,也可以是标签。小代码如下:
      document.getElementById(id + "Span").innerHTML = "<font color=" + color + ">" + content + "</font>";
      2).在检验两次密码是否相等,居然不能用password.equals(repassword)。。。而是用passowrd == repassword。
      3).校验Email字段的时候,使用到了正则表达式。虽然已经不能自己写出来,但是看得懂还是可以的。代码如下:
      reg = new RegExp("^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$");
        email = document.getElementById(id).value;
        if(reg.test(email))
        {
                content = "邮箱正确";
                color = "green";
        }
        else
        {
                content = "请输入正确的邮箱格式";
                color = "red";
        }
     
    4.核心代码:户籍输入框的省市联动制作:
      1).利用onChange = "函数方法",当选择框的选项做改动的时候,会触发该事件,进而启动JS代码
      2).给<select>标签中的字标签<option>标签添加属性value,每一项设置为0,1,2,3...
      3).开始写函数:
       (1)获取城市标签:city = document.getElementById("city");
       (2)获取<option>的所有标签,有两个做法:
         [1.]options = city.getElementsByTagName("option");遍历options
         [2.]因为city是选择框,里面自带属性options。所以可以遍历city.options
       (3)遍历过程中删除options结点,有多种做法,推荐两种:
         [1.]利用父标签city删除:city.removeChild(options);
         [2.]把结点清空:while(option.length>=0) options[options.length] =null;利用了options被删除元素后,长度可变的情况。
       (4)清空完前面的元素后,接下来是自己创造新的元素了。
         [1.]建立城市表:var arrs = Array(4);arrs[0] ={"城市1","城市2","城市3","城市4"}...建立在函数方面作为全局变量。
         [2.]遍历
for(i = 0;i<arrs.lenth;i++)
{
  for(j = 0;j<arrs.length;j++)
  {
     //这里是创造新元素的代码区
  }
}

     (5)创造新<option>标签的步骤:
     //[1.]新元素创造:
     var newOption = document.createElement("option");
     //[2.]创建一个文本结点接收城市名字:
     var textNode = document.createTextNode(arr[j]);
     //[3.]文本结点textNode装入newOption中
      newOption.appendChild(textNode);
     //[4.]option选项装入父类中
      city.appendChild(newOption);        

回复 使用道具 举报
今天主要学JS常用事件和DOM;
常用事件主要有:

(!为未掌握全拼)
1.获得/失去焦点:
onfocus!!!
onblur
2.表单提交触发:
onsubmit!!!
3.页面加载:
onload
4.点击:
onclick
5.下拉列表改变:
onchange
6.(双击某元素:ondblclick!!!)

常用方法有:

获取元素:
document.getElementBy+获取元素的方法
创建元素:
document.create+创建的元素或文本
添加节点:
element.appendChild
删除元素:
element.removeChild
了解(无需完全掌握,不懂可查API):
(内置对象和全局函数)

通过今天的学习,课上案例基本掌握,有几个格式上的小错误仍需改进,在轩哥和超哥的讲解后已能自己敲出
回复 使用道具 举报
叶凌青
今天主要学习了js里的Dom
什么是DOM : 文档对象模型
将一个HTML的文档加载到内存形成一个树形结构,
从而操作树形结构就可以改变HTML的样子

感觉就是对HTML的树形结构进行增删改查
还又新学了几个js的事件

onfocus:获得焦点时触发该事件
onblur:失去焦点触发该事件
onchange : 下拉列表改变事件
然后还学习了几个案例
1.使用JS完成表单的校验
主要用到的是
document.getElementById(“”).innerHTML=”HTML的代码”;
2.表格的隔行换色
3.JS完成复选框的全选效果
4.完成省市联动效果
其实这些案例只要记住开发步骤都可以完成

【步骤一】创建一个html文档
【步骤二】在要去校验的文本框上添加事件.
【步骤三】触发函数
【步骤四】在函数中向文本框后的html的区域中写入一段提示的内容.
回复 使用道具 举报
张述明
今天学习的主要内容是一些案例的偏写,知识点挺多的,首先是使用js完成注册页面的表单提示和校验, 其重要注意的点事JS的事件和输出 目前我们学习的事件有onload onsubsmit
Onfocus onblur 等 js的输出是document.getelmentByid().innerHTML=””
注册页面的表单提示和校验 首先是要创建一个html文档 在要去校验的文本框上添加事件onfocus 和onblur 并且添加<span> 通过触发函数,并在函数的文本框后面的html里面添加要提示的内容.

隔行换色案例要注意的一点就是Js要获得表格的行数要用的方法就是table.rows.length,然后遍历,判断奇偶.

全选和全部不选的案例 也是要确定事件onclick 然后触发函数,判断复选框是否被选中,如果是,所有复选框都选中,反之.
省市联动案例
事件 onchange  通过二维数组然后遍历 使用创建元素document.creatElement();
创建文本 document.creatTextNode() ,然后添加节点 使用 element.appendChild();
回复 使用道具 举报
黄兴磊
      今天学习了JS 原理步骤大概如下 首先要创建一个HTML的文件
然后要求校验的文本框上添加事件,在去触发函数, 在函数中向文本框后的html的区域中写入一段提示的内容,案例格式原理记住下,以后碰到类似的也都是换汤不换药, js的联动步骤大概如下 1   在下拉列表中定一个onfocus:获得焦点时触发该事件,把值传入,
2 在创建一个二维数组,给每个省会赋值, new Array()
3 在调用函数获取每个省份的信息, function changeCity(value)
4 在清除第二个列表中的类容,要记住掉着遍历,
  • 如果把 options[] 数组中的一个元素设置为 null,那么选项就会从 Select 对象中删除。
  • 5在遍历每个省会的信息,利用if语句来判断Value的值是否等于下拉列表对应的值,
  • 6创建元素
  • 7创建文本节点  将文本的内容添加到option元素中
  • 8将option的元素添加到第二个列表中


回复 使用道具 举报
林树德
           今天主要学习了js的输出及Dom的一些用法;
1,js的输出方法的两种操作  :    document.getElementById(“”).innerHTML=”HTML的代码”;
                                               document.write(“”);  第一种方法比较常用;
2,学习了一些常用的事件:     onfocus:获得焦点时触发该事件 ;  onblur:失去焦点触发该事件;   onchange : 下拉列表改变事件
3:DoM:是文档对象模型;将一个HTML的文档加载到内存形成一个树形结构,
从而操作树形结构就可以改变HTML的样子;DOM当中的一些常用方法;获得元素;
A:  document.getElementById();                -- 通过ID获得元素
B:   document.getElementsByName();        -- 通过name属性获得元素
C:    document.getElementsByTagName();        -- 通过标签名获得元素
创建元素
A; document.createElement();                -- 创建元素
B: document.createTextNode();                -- 创建文本
添加节点
A: element.appendChild();                        -- 在最后添加一个节点
B: element.insertBefore();                        -- 在某个元素之前插入
删除节点
A: element.removeChild();                        -- 删除元素
通过获取焦点失去焦点可以完成注册页面的一些验证,通过下拉事件来完成省市联动的案例;操作时经常出错,
回复 使用道具 举报
林荣彬
       JS输出的两种方式:
1.document.getElementById("标签").innerHTML="HTML的代码"
2.document.write("""")

JS事件:
获得焦点:onfocus
失去焦点:onblur
表单提交事件:onsubmit 需要有返回值

获得控制表格的元素
1.var tab = document.getElementById("tab")//获得表格的控制权
2.var len = tab.rows.length;//获得表格的行数

DOM可以对HTML进行增删改查


JS表格隔行换色
步骤 : 设置一个事件 ( onload ) ---定义一个函数---根据要操作的表格的ID获取对象---获取到行数---遍历行数---进行判断 ( 奇数行或者偶数行 )---进行相应的操作


DOM的常用的操作
获得元素:
document.getElementById();                -- 通过ID获得元素.
document.getElementsByName();                -- 通过name属性获得元素.
document.getElementsByTagName();        -- 通过标签名获得元素.

创建元素:
document.createElement();                -- 创建元素
document.createTextNode();                -- 创建文本

添加节点:
element.appendChild();                -- 在最后添加一个节点.
element.insertBefore();                -- 在某个元素之前插入.

删除节点:
element.removeChild();                -- 删除元素

编码和解码的方法:
解码
decodeURI();
decodeURIComponent()
回复 使用道具 举报
黄志彬
今天主要学习了JS输出
1.Document文档对象获得某一个元素.innnerHTML属性: document.getElementByid("").innerHTML="输出的内容"
2.Document.Write方法,可以覆盖加载后页面的内容:   document.write("")

js的常用事件
  Onfocus  获得焦点
  Onblur   失去焦点
  Onsubmit 提交
  Onchange 下拉列表改变事件               
  ondblclick双击某个元素事件
了解到还有键盘事件和鼠标事件

隔行换色
使用JS获得表格行数:获得控制表格的元素:
var tab1 = document.Getelement;
Var len = tab1.rows.length;
确定事件onload   获得表格控制权id
页面加载完就触发函数获得操作表格,获得表格所有的行数,遍历表格行数,判断呢是否是奇数行   是奇数行给当前行添加颜色
Tab1.rows[i].style.background=”#FF0000”;否则添加其他颜色

表格中的thead和tbody
thead头部加粗居中, td变成th


DOM: 可以对元素增删改查
  element.appendChild();            添加子节点
  document.getElementById();         通过ID获得元素
  document.getElementsByName();      通过name属性获得元素
  document.createElement(元素名);    创建元素
  document.createTextNode(文本内容); 创建文本
      
document object model:文档对象模型  标签就是element对象  
DOM使用要知道document,element,attribute中的方法


省市联动
创建数组 触发时间 下拉列表的改变事件onchange  DOM的操作
创建元素 添加元素
确定事件onchange 触发函数 在函数中编写代码 获得选择的省份信息,定义数组创建二维数组,根据省份信息获得对应市的数据,遍历市的信息,创建元素,创建文本,将文本添加到第二个下拉列表里
回复 使用道具 举报
使用JS完成表单的校验
      表单校验是在表格后直接个提示需要一个<span></span>块  给span设置一个ID    需要onfoucus获得焦点  onfoucus="tirs1('id','内容')" 因为需要给多个表格设置所以使用有参函数   创建一个函数  function tirs1(id,内容)
输出方式为  docment.getelementbyid(id).innerHTML="内容"   innerHTML="(可以写元素)"
使用JS完成表格的隔行换色
     表格一般有一个表头thead()(里面字体加粗居中)和多个表身体(tbody),使用onload事件 创建一个函数  需要获取表格对象   得到其行数   table.tbios[0].rows.length   遍历行数  判断行数为奇偶数   奇偶颜色不同 tablic.tbios[0].rows[i].backgoundcolor="";  
使用JS完成复选框的全选效果
   全选或者全不选 定义一个全选按钮,其他按钮id取一样,函数里选择按钮为checked=true  当true时遍历其他按钮  同样为true就行了
使用JS完成省市联动效果
     下拉onchenge事件   当下拉一边时,另一边跟着变化,需要定义二维数组,获取对象, 创建option,创建文本<数组里的元素>,将文本添加到option里,将option加入<select>里  
回复 使用道具 举报
吴鹏

--------------------------------------------------------------

高级:
document.getElementById("").innerHTML = "HTML的代码";
document.write("");

onfocus :获得焦点
onblur :失去焦点;
onsubmit :提交的时候

步骤一 船舰一个html文档;
步骤二 在要去检验的文本框创建一个事件;
步骤三 创建一个获得焦点时要触发的函数;
步骤四 写入获得焦点时要显示的内容;

---------------------------------------------------------------

使用JS完成表单的提示和校验:

一,确定触发事件;
二,确认触发事件时要执行的函数(方法);
三,获取要执行操作的元素;
四,对元素进行操作;

本题目的是当鼠标移动到文本框点击后,在文本框后面显示提示语句;

使用到的:document.getElementById().innerHTML = "";
    onfocus = ;

1 在文本框所在便签内定义id,为了后面函数可以通过方法获取文本框对象;
2 在文本框所在标签内定义事件onfocus="函数名("id值",提示内容)"(焦点事件,当鼠标对这个标签的元素进行点击等取得焦点后,
   执行后面的函数,使用传参,将具体的id值和内容传进函数);
3 文本框所在<td>标签后定义一个<span id = "文本框id值Span"></span>,这个标签是在文本框所在同一行后面可以添加内容,
   id值是后面可以将校验提示通过这个id值来进行赋值;
4 在<head></head>内部使用标签<script></script>,写入事件触发后要执行的函数体,函数体要实现扁担的提示和校验功能;
5 语句:
function 函数名() {
   
    通过document.getElementById().innerHTML = "",方法,将提示内容以及要显示的标签的id值传进去;

}


-------------------------------------------------------------

使用JS实现表格隔行换色:

本题要将表格的行数作为数组对象存进数组里,则数组的索引值就代表了表格的行数,
使用的方法:tab1 = document.getElementById("表格的id值");获取表格对象
for方法遍历tab1对象,获取每行的索引值;
进行if判断,当索引值能被2整除时(索引值 % 2 == 0),对该行元素 如tab1.rows[i].style.backgroundColor进行颜色的设置;
当索引值不能被2整除时,进行不同颜色的设置;

另外一种办法:是通过<thead></thead><tbody></tbody>进行设置;
将表格的标题头放进<thead></thead>,其余的内容放进<tbody></tbody>里;
通过document.getElementById().thead.style.backgroundColor = 设置表格的标题颜色;
通过len = document.getElementById().tbodies[0].rows.length,获取表格内容每行的个数;
遍历document.getElementById().tbodies[0],
判断索引值是否能被2整除,分别对其的背景颜色进行设置(通过tab1.tbodies[0].rows[i].style.backgroundColor);

---------------------------------------------------------------

使用JS完成复选框的全选和全不选:

通过getElementsByName(),获取所有同名(要先在标签里用name取相同的名字)的元素集合;
因要求复选框,所以<input type = "checkbox" />;
标题上的复选框:<input type="checkbox" name="selectAll" id="checkAll()" />;
表格体上的复选框统一为:<input type="checkbox" name="ids" />
以上,标题的语句,输入类型为复选框,id为checkAll()(通过id值获取元素),触发事件为点击,触发的函数为checkAll(),通过定义一个
checkAll()函数,在函数内实现复选框的全选和全不选;
表格体上的复选框,输入类型为复选框,name取值为统一的ids,可以通过getElementsByName(),获取全部的复选框,进行操作;
函数:
function checkAll() {
var select = document.getElementById("checkAll()");
//获取标题头的复选框对象;
var ids = document.getElementsByName("ids");
//获取所有需要操作的复选框;
if (select.checked == true) {
//对select的值进行判断;
    for (var i = 0; i < ids.length;i++) {
        ids[i].checked = true;
    }
    //主复选框值为true时(勾选),将所有的复选框设置为true;
}else {
    for (var i = 0; i < ids.length;i++) {
        ids[i].checked = false;
    }
    //主复选框值为false时(勾选),将所有的复选框设置为false;
}
}
}

注意:上面的数组的值用checked,不是value

------------------------------------------------------------------

用JS完成省市联动:

onchange:此为打开下来菜单时触发事件;

使用二维数组存放省市的数据,比如:
假设有5个省,先定义一个数组var arrs = new Array(5),用来存放具体的每个省,
具体的省份在表单中的option标签里用value定义好(当前有5个省,则value的值为0-4,对应省数组的索引值);
在arrs[0]中,再用数组的方式存放当前省份的市;

在表单中,省的<select id="province"></select>
    市的<select id="city"></select>;
省的<option value= " "></option>存放具体不同的省份,不同的省用不同的value值;

定义函数:
function pToC(value) {
    //此函数传入一个value值,用来和省的数组的索引值对比,将对比后的市值赋值给city;
    var city = document.getElementById("city");
    //获取city对象,此时city里面还没有值;

    for (var i = city.length;i >0;i++) {
        city[i] = null;
        //将city的值清空,这样在每次选择其它省份时,不会将其它省份的市的值写进去;
    }
   
    var arrs = new Array();//定义省的数组
    arrs[0] = {"xx市","xx市",...}
    .
    .
    .
    //将所有省数组元素里添加各自的省份;

    //遍历省数组,判断省数组的value值,将索引值与赋值给city对象;
    for(var i =0;i < arrs.length;i++) {
        if(value == i) {
        //判断省的value的值与数组中索引的值是否相等;
            for(var j=0; j<arrs[i].length;j++){
            //当上面判断为true时,遍历对应索引值的市数组;创建option元素,创建对应的城市的文本对象;
                var opt = document.createElement("option");
                var text = document.createTextNode(arrs[i][j]);
                //将对应的元素添加进city数组里;
                opt.appendChild(text);
                city.appendChild(opt);
            }
        }
    }
}

回复 使用道具 举报
郑志祥
今天学了DOM的重要格式  document.getElementByID().innerHTML="HTML代码
学习了四个重要案例
案例一(完成表单的校验)
解题思路分析:  
1.在用户名栏中添加一个id 并传入参数( id ,文字内容)  
2.  输出传入的提示参数,并获取id.value得到输入的值
3.进行判断(document.getElementById(“”).innerHTML=”HTML的代码”;) 输出用户名为空的值
案例二(表格的隔行换色)
1.在body处定义一个页面加载事件 娶个方法名(记得写上括号)
2.学习了表格头部(thead)  表格身部(tbody)
3.通过id获取操作表格的控制权,
4.获取表格中的长度
5.For循环遍历表格后进行判断,奇数行为红色,偶数行为灰色
案例三(使用js完成表格的全选与全不选.html)
1.在原来的表格基础上添加新的一行(合并所有所谓列数)  添加button删除/添加
2.第二行第一列添加一个复选按钮 ,设定方法名  定义id  并设定一个触发事件
3.在三行及以下的左边添加新的一列,功能复选按钮,类名为ids 上面调用
4.获得上面的复选框
5.判断这个全选复选框是否被选中
6.遍历下面的子复选框,如果全选复选框被选中,下面的子复选框全部为true,否则为false




案例四(省市联动的实现)
1.在省的部位创建一个下拉列表事件,(并传入一个参数)也就是将左边所有省传入,在下拉列表中可以看到.
2.定义一个二维数组
3.通过获取id来创建市的对象
4.遍历市的数组,清空第二个列表里面的内容
5.遍历省的数组,里面嵌套一个市的数组,将省与市进行匹配
6.创建元素,创建文本节点,
7.将文本添加到元素当中.  元素添加到第二个列表(也就是市当中)

(内置对象)
<html>
        <head>
                <meta charset="UTF-8">
                <title></title>
        </head>
        <script>
                var str=new String("ab-cd"); //创建一个字符串  (创建了2个对象)
                var str="ef-kk";             //也是创建一个字符串(创建了1个对象)
                var str1= str.split("-");
                alert(str1[1]);
        </script>



回复 使用道具 举报
林文辉
内容:
DOM,文本对象模型,以类似树形状的方式存在内存中,和数据结构中的树原理一样
,都有着根节点,子节点及叶子等.
通过DOM对象我们可以实现通过id,name及标签名等获取元素,得到元素我们又可以进行
元素创建,文本创建,节点删除等一系列的操作,在此基础上我们就能完成一些类似表格
行列动态变色,以及添加导航等的这些功能.
常用事件:
onfocus()获取焦点
onblur()失去焦点
onsubmit()提交时
onchange() 下拉列表改变事件 如选择省份与对应城市的功能
innerHTML,可以直接链接到一个标签的位置,一般用于校验表单是否满足条件等等,
相对于alert()的弹框,innerHTML则是在文框旁出现提醒(正常都是在文本框旁)
更加人性化.
关于Array的一个方法:
join(),Array对象的一个比较强大的方法.把数组的所有元素放入一个字符串。
元素通过指定的分隔符进行分隔.比如我需要向数据库查询多个id的时候,如果用
数组作为参数传进去再循环去查询,就显得比较麻烦和笨拙.而我们可以通过.join(","),
将字符串数组通过","分隔存入一个字符串中,这样我们可以将这个字符串作为参数传进去
,然后使用In() 就可以利用数据库本身的方法进行多值查找.

回复 使用道具 举报
林玮
今天就讲的是js一个重点:DOM,所以说内容没多少,不能说没多少吧,反正是比昨天的少;
虽然今天讲的少,但是我听得是一头雾水,晚上敲案例时没少出bug,但是这些都不影响我前进的步伐;;

DOM是一个文档对象模型,它的主要功能是把HTML文档变成一个以HTML本身为根,各种标签为枝,标签里的内容为叶的树状图加载到内存;
今天主要讲了DOM的方法,它要记的方法也是有很多,而且也是到AIP查的到的(只要你会查),然后我就挑几个几天用的比较多的几个吧;
DOM的方法:(注:获取元素和创建元素方法如果你要对该元素进行操作的话就要给,该方法设置一个变量赋值)
        document.getElementByld():通过id获取元素,()里写的是id有
        document.getElementsByName():通过name来获取元素,()里写的是name值
        element.appendChild():在最后添加一个任意节点,()里写的是var变量名
        document.createElement(): 创建元素,元素就是标签,也就是树的枝,括号里写的是元素
        document.createTextNode():创建文本,也就是最后的叶,虽说是创建文本其实也就是内容,因为你把文本       
写入数组在创建文本也是可以的
        (*´゚∀゚`)ノ (*´゚∀゚`)ノ

今天除了要讲DOM重点,还要讲一个相对其他也比较重要的东西:js的常用事件,这些事件是用在body里面的.通过事件的关键字调用函数,再通过函数来完成需求,然后在页面中触发事件大概应该是这么个流程;
js事件作为重点之一自然是也要记得很多东西的,它要记得就是事件了,还是一样挑几个;嘿嘿(=´ω`=)不要说我偷工减料哈,我是真的记不住撒(~ ̄▽ ̄)~
js的常用事件:
        onfocus:获得焦点时触发该事件
        onblur:失去焦点触发该事件
        onsubmit:表单提交的时候触发
        onchange : 下拉列表改变事件
(注:最后说一下,当你不记得某个东西的时候,确实去查API是最好的选择,但是查完API自己也要一点一点记下来,这样子积少成多也是很好的一个习惯)
回复 使用道具 举报
郑学馨
什么是DOM:
dom可以理解为HTML对象树,通过DOM可以对HTML文档的每个节点

进行增删改查,
查:document.getelenmentbyid():通过id查找对象/byname():通

过name值查找/bytagname():通过标签名查找对象(注意:该方法

返回的是一个数组,它会找到整个HTML中所有你要的标签的对象)
增:doucument.createelement():创建元素/createtextnode():

创建文本,
怎么在元素里添加文本:element.appendchild();
删除某个元素:element.removechild();
js中的事件:onclick:点击触发;onload:加载触发;onchance:选

择触发;onsubmit:提交触发;onfocus:获得焦点触发;(什么是焦

点:就是光标闪动的位置)
什么span,怎么使用?
答:span与div类似,span是横向排列,div默认是纵向排列,使用与

div一样;
onfocus定义位置在哪?
答:今天所学的都是定义在input标签中;
传参的content可以用别的字母代替吗?
答:可以,这个值名字是可以随意给定的;
什么是thead和tbody?怎么使用?
答:thead是table中的表头部分,tbody是table中的主体部分;

怎么给表格背景行换颜色?
怎么实现全选?
怎么实现省市联动?
回复 使用道具 举报
今天进一步学习了JS的相关知识,一个html文件加载到内存,被解析后会形成一个树状document模型(DOM),通过操作树状结构就可以改变HTML的样子.BOM中有四个对象:window\navigater\screen\history.其中window是BOM中最高级的对象,其他三个对象都可以通过window的属性得到
DOM的对象:所有加载至树状模型的元素都是DOM的对象,可以说,所有的标签都是DOM的对象,我们可以通过 向元素添加新的子节点,作为最后一个子节点 element.appendChild()
每个对象都有其特有的属性,建议记下常用的属性,没事多翻翻API






回复 使用道具 举报
黄进安:

1.      使用js完成表单校验:
a.      事件:onfocus(获得焦点触发事件)和onblur()失去焦点触发该事件)
b.      输出方法: document.getElementById(“id”).innerHTML=”HTML的代码”
2.      使用js完成表格隔行换色
a.      新学习了头标签<thead>和体标签<tbody>的使用

3.      使用js完成复选框的全选的全不选
a.      了解了通过document.getElementsByName();获得的元素是个数组

4.      使用JS完成省市联动
a.      事件: onchange (下拉列表改变事件)
b.      通过DOM动态改变HTML的结构
5.      DOM:是一种文档对象,即把HTML中的文档标签当成对象进行相关的增删改查的操作
a.      element.appendChild(); 是一种追加的添加的方式
b.      js获取的对象只能是内置好的对象???是否可以自己创建???


回复 使用道具 举报
邵倩


JS的3个组成部分之一: DOM 即document object model文档对象模型
DOM就是将HTML文档加载到内存,形成一个树形结构,我们再通过操作该树形结构来实现增删改查功能

整个HTML文档可以称为document对象 HTML中所有标签可以称为element对象,标签的属性可以称为attribute对象,所有文本内容可以称为text对象,最后所有的对象可以统称为节点node.


JS的输出:
1.(常用)document.getElementByid("").innerHTML="输出的内容"
2.document.write("")

常用事件:获得焦点onfocus  失去焦点onblur  提交onsubmit 下拉列表改变onchange

掌握以下4个案例
1.表单的提示和非空校验
2.表格的隔行换色
3.复选框的全选和全不选
4.省市二级联动

常见的开发步骤
确定事件,触发函数,在函数中获取要操作的元素对象,对元素进行操作

代码写一点就测试一下 使用alert()
回复 使用道具 举报
本帖最后由 Do1 于 2019-11-23 00:36 编辑



总结,今天学习了JS的3种功能

1是未提交及已提交,在input输入框后的span的标签中加入提示功能,这里用到的主要是根据js的增删改查功能。

2是隔行换色功能,用到的主要是tab1.tBodies[0].rows.length;方法(tab1表示的是表格元素),tBodies[0]表示提取到第0行

3是根据js来设定二级标签页面的功能,这里主要涉及到了js的数组,需要注意的是添加完后需要将原有的二级标签删除。


涉及函数:

                createElement  创建一个元素
                createTextNode 创建一个文本
                appendChild    加入元素
                var arrs=new Arrya(x);创建一个长度为i的数组
                arrs[0]=new Array("杭州市","绍兴市","温州市","义乌市","嘉兴市");
                和java不同的是js所创建的数组可以是多维的,并且所用的括号是小括号
               
               
回复 使用道具 举报
123
您需要登录后才可以回帖 登录 | 加入黑马