• javascriptの一些问题


    1、form中的input有哪些类型?各是做什么处理使用的?     text   radio   checkbox   file   button   image   submit   reset   hidden 

      submit是button的一个特例,也是button的一种,它把提交这个动作自动集成了。        如果表单在点击提交按钮后需要用JS进行处理(包括输入验证)后再提交的话,通常都必须把submit改成button,  即取消其自动提交的行为,否则,将会造成提交两次的效果,对于动态网页来说,也就是对数据库操作两次。

      button具有name、value属性,能触发onclick事件      
      submit继承了button     submit增加了触发表单onsubmit事件的功能、增加了执行表单的submit()方法的功能

    INPUT   type=submit按回车提交表单     button提交的是innerTEXT

    2、table标签中border,cellpadding     td标签中colspan,rowspan分别起什么作用?     border边界     cellpadding边距 

    cellpadding,是补白,是指单元格内文字与边框的距离
    cellspacing
    ,两个单元格之间的距离
      colspan跨列数     rowspan跨行数  

    3、form中的input可以设置readonly和disable,请问这两项属性有什么区别?     readonly不可编辑,但可以选择和复制     disable不能编辑复制选择  

    4、JS中的三种弹出式消息提醒(警告窗口、确认窗口、信息输入窗口)的命令是什么?     alert     confirm     prompt

    5.题目:当点击按钮时,如何实现两个td的值互换? 用javascript实现此功能。 分析: 这个题主要是考变量传值。其次是考如何取元素的值。 第一种代码如下:

    复制代码
    Code 1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">2<html xmlns="http://www.w3.org/1999/xhtml">3<head>4<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>5<title>无标题文档</title>6<script type="text/javascript">7//<![CDATA[ 8function submitbtn() {  910var tText1 = document.getElementById('txt1'); 11var SubmitBtn1 = document.getElementById('submitBtn1'); 12var tText2 = document.getElementById('txt2'); 13var SubmitBtn2 = document.getElementById('submitBtn2'); 14    SubmitBtn1.onclick =function() { 15var temp = tText1.value; 16        tText1.value = tText2.value; 17        tText2.value = temp; 18    }; 19    SubmitBtn2.onclick =function() { 20var temp = tText2.value; 21        tText2.value = tText1.value; 22        tText1.value = temp; 23    }; 24} 25window.onload =function() { 26    submitbtn(); 27} 28//]]>29</script>30</head>3132<body>33<input type="text" value="12345666" id="txt1"/>34<input type="submit" id="submitBtn1"/>35<input type="text" value="12345222" id="txt2"/>36<input type="submit" id="submitBtn2"/>37</body>38</html>
    复制代码

    第二种代码如下:

    复制代码
    Code 1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">2<html xmlns="http://www.w3.org/1999/xhtml">3<head>4<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>5<title>无标题文档</title>6<script type="text/javascript">7//<![CDATA[ 8function submitbtn() {  910var tText1 = document.getElementById('txt1'); 11var SubmitBtn1 = document.getElementById('submitBtn1'); 12var tText2 = document.getElementById('txt2'); 13var SubmitBtn2 = document.getElementById('submitBtn2'); 14    SubmitBtn1.onclick =function() { 15var temp = tText1.innerHTML; 16        tText1.innerHTML = tText2.innerHTML; 17        tText2.innerHTML = temp; 18    }; 19    SubmitBtn2.onclick =function() { 20var temp = tText2.innerHTML; 21        tText2.innerHTML = tText1.innerHTML; 22        tText1.innerHTML = temp; 23    }; 24} 25window.onload =function() { 26    submitbtn(); 27} 28//]]>29</script>30</head>3132<body>33<table width="200" border="1" cellpadding="0" cellspacing="0">34<tr>35<td id="txt1">321445</td>36<td><input type="submit" id="submitBtn1"/></td>37</tr>38<tr>39<td id="txt2">123133</td>40<td><input type="submit" id="submitBtn2"/></td>41</tr>42</table>43</body>44</html>45
    复制代码

    6. "闭包"问题

    复制代码
    Code <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>Untitled Page</title><script type="text/javascript">         window.onload=function()          {              var ii,a="";                           var d=document.getElementsByTagName("DIV");              for(ii=0;ii <d.length;ii++)              {                if(d[ii].id=="top")                {                  a=d[ii].getElementsByTagName("li");                  for(var i=0;i <a.length;i++)                  {                       //a[i].onmouseover=function(){show(i)}; //此处的i是一个变量,在运行show取i的值,很显示你的i每次都会最终变成a.length                     a[i].onmouseover=new Function("show("+i+")"); //这里的i是一个常量,就是此刻i是值                 }                                 }              }          } 
    function show(z) { alert(z); }
    </script></head><body><div>div1</div><div id="top"><ul><li>a</li><li>a</li><li>a</li><li>a</li><li>a</li></ul></div></body></html>
    复制代码

    使用注释行的时候,总是提示5.

    在一般编程语言中, 参数都是"传值", 假设一个C函数的原型是int Fun(int value);
    当你调用这个函数时, Fun函数首先会在自己的函数栈上copy一份参数, 就是这个函数的副本, 当你在Fun外部修改value值, 并不会影响Fun内部的value.
    而Javascript的内嵌函数很特殊, 它并不会copy一个参数副本, 所有函数公用一套参数, 所以你在函数外部修改了参数值, 函数内部也会受影响.
    这就是为什么你的show函数, 它的z参数是最后一个值, 因为每一次循环, z都被更改了.  传值和传址的问题

  • 相关阅读:
    Codeforces 994B. Knights of a Polygonal Table
    Codeforces 994A. Fingerprints
    Codeforces 988F. Rain and Umbrellas
    51nod 1158 全是1的最大子矩阵(单调栈 ,o(n*m))
    51nod 1102 面积最大的矩形 && 新疆大学OJ 1387: B.HUAWEI's billboard 【单调栈】+【拼凑段】(o(n) 或 o(nlog(n))
    Codeforces 988E. Divisibility by 25
    【复习资料】单片机与嵌入式系统原理及应用
    Codeforces 723D. Lakes in Berland
    Codeforces 986A. Fair(对物品bfs暴力求解)
    Codeforces 986B. Petr and Permutations(没想到这道2250分的题这么简单,早知道就先做了)
  • 原文地址:https://www.cnblogs.com/altman29/p/2498698.html
Copyright © 2020-2023  润新知