JavaScript_innerText(innerHTML)_HTML的转义符(和常用的符号)_文本框的操作_Unit_4;

Topic 1 : innerText(innerHTML)_HTML的转义符(和常用的符号):

可读可写:

innnerText;

innerHTML;

这两个属性是字符串类型;

box.innerText;  (属性)他是这样使用的;

innerHtml和innerText的区别为:

innerText  获取内容的时候会把标签过滤掉 通过浏览器渲染了  不会打印出来;老版本的firefox是不支持此属性的,老版本的用是textContent (现在是都支持了);

innerHTML 获取最原始的内容不会把标签和空格换行过滤掉  就是对标签进行解析了(速度慢)  会对标签进行转义打印出来   他不是W3c标准的;

HTML中的转义符是这个&;

我们要是想网页打印一个<p>标签就是&ltp&gt;(意思是less than     greater than);

空格是&nbsp &回车是br   圈c是&copy( 这个代表版权声明符);

注意我们js中的转义符才是反斜杠   \   别弄混了;

解决老版本浏览器的innerText的兼容性问题: 

代码示例:

// JavaScript Document

// 写一个函数,处理innerText和textContent的兼容性问题
function getInnerText (element) {
	if (typeof element.innerText === 'string') {
		//说明这个浏览器支持innerText  那么我们直接返回就OK了
		return element.innerText;
	} else {
		//说明浏览器不支持innerText 
		return element.textContent;
	}
}

function setInnertext (element,content) {
	if (typeof element.innerText === 'string') {
		//说明这个浏览器支持innerText  那么我们直接返回就OK了
		element.innerText = content;
	} else {
		//说明浏览器不支持innerText 
		element.textContent = content;
	}
}
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>innerText的兼容性问题</title>
</head>

<body>
	<div id="aha">aha</div>
	<script src="common.js"></script>
	<script>
		var aha = document.getElementById('aha');
		console.log(getInnerText(aha));
		setInnertext(aha,'qunide');
		console.log(getInnerText(aha));
	</script>
</body>
</html>

Topic 1 : 文本框的操作 :

1 . 设置文本框的值 :

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>设置文本框的值</title>
</head>

<body>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
	<!----单选-------->
  <input type="radio" >
  <input type="button" value="按钮" id="btn">  
  
  <script>
    // 1 设置文本框中的内容
    var inputs = document.getElementsByTagName('input');
    var i = 0, len = inputs.length;
    for (; i < len; i++) {
      // 获取集合中的元素
      var input = inputs[i];
      // 判断当前的input是否是文本框
      // if (input.type === 'text') {
      //   input.value = i + 1;
      // }
      if (input.type !== 'text') {
        // 不是文本框
        continue;
      }
      input.value = i + 1;
    }

    // 2 点击按钮获取文本框中的内容,并用 | 分割形成一个新的字符串 
  </script>
</body>
</html>

2 .  获取文本框的值 :

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>文本框的一个小案例</title>
</head>

<body>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="radio" >
  <input type="button" value="按钮" id="btn">  
  
  <script>
    // 1 设置文本框中的内容
    var inputs = document.getElementsByTagName('input');
    var i = 0, len = inputs.length;
    for (; i < len; i++) {
      // 获取集合中的元素
      var input = inputs[i];
      // 判断当前的input是否是文本框
      if (input.type !== 'text') {
        // 不是文本框
        continue;
      }
      input.value = i + 1;
    }

    // 2 点击按钮获取文本框中的内容,并用 | 分割形成一个新的字符串 
    var btn = document.getElementById('btn');
    btn.onclick = function () {
      // 找到所有的文本框,获取文本框的值  | 
      var str = '';
      for (i = 0; i < len; i++) {
        var input = inputs[i];
        // 判断是否是文本框
        if (input.type !== 'text') {
          continue;
        }
		  //注意这一句
        str += input.value + '|';
      }
	  //截取字符串的方法    从0截取到length-1
      str = str.substr(0, str.length - 1);
      console.log(str);
    }
	//注意我们这里用的是字符串   但是我们这里用字符串并不好
	//因为字符串有不可变性  就是我们每次进行加的时候呢  我们老的字符串不会被删除  每次加完之后就会出现一个新的字符串这个样子的话
	//就会影响性能   那么我们这里用数组的话更好一点
  </script>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>文本框的一个小案例</title>
</head>

<body>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="text"><br>
  <input type="radio" >
  <input type="button" value="按钮" id="btn">  
  
  <script>
    // 1 设置文本框中的内容
    var inputs = document.getElementsByTagName('input');
    var i = 0, len = inputs.length;
    for (; i < len; i++) {
      // 获取集合中的元素
      var input = inputs[i];
      // 判断当前的input是否是文本框
      if (input.type !== 'text') {
        // 不是文本框
        continue;
      }
      input.value = i + 1;
    }

    // 2 点击按钮获取文本框中的内容,并用 | 分割形成一个新的字符串 
    var btn = document.getElementById('btn');
    btn.onclick = function () {
      // 找到所有的文本框,获取文本框的值  | 
	  // 注意这个数组的定义方法  后面是一个中括号  不是大括号这点要特别注意
      var arr = [];
      for (i = 0; i < len; i++) {
        var input = inputs[i];
        // 判断是否是文本框
        if (input.type !== 'text') {
          continue;
        }
        arr[i] = input.value ;
      }
	  //注意这个方法  这个方法是数组的每个元素后面加上()里面的东西  并把它输出为字符串  arr.join(separator)  
	  //意思就是每个元素后面加一个空格并输出为字符串
      var string = arr.join('|');
      console.log(string);
    }
  </script>
</body>
</html>

03 . 禁用文本框的值

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>禁用文本框</title>
</head>

<body>
  <input type="text" id="txt" >

  <input type="button" value="禁用" id="btn">

  <script>
    var btn = document.getElementById('btn');
    btn.onclick = function () {
      // 
      var txt = document.getElementById('txt');
      // 禁用文本框
      // 当标签的属性只有一个值的情况下,一般DOM元素对应的此属性的类型是布尔类型
      txt.disabled = true;
    }
  </script>
</body>
</html>

04 . 设置下拉选项中的随机选项

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
</head>

<body>
  <select id="sel">
    <option>请随机选择</option>
      
    <option>回锅肉盖饭</option>
    <option>宫爆鸡丁盖饭</option>
    <option id="op">饺子</option>
    <option>炒饼</option>
    <option>地三鲜盖饭</option>
  </select>
  <input type="button" value="随机" id="btn">

  <script src="common.js"></script>
  <script>
    var btn = document.getElementById('btn');
    btn.onclick = function () {
      // 让某个option选中
      // var op = document.getElementById('op');
      // op.selected = true;

      // 随机设置某个option被选中

      // 获取所有的option
      var sel = document.getElementById('sel');
      var options = sel.getElementsByTagName('option');
      // 1 - options.length - 1
      // 生成随机的索引
      var index = getRandom(1, options.length - 1);
      // 根据索引获取option
      options[index].selected = true;
    }
  </script>
  
</body>
</html>
// 获取min-max之间的随机整数
function getRandom(min, max) {
  min = Math.ceil(min);
  max = Math.floor(max);
  return Math.floor(Math.random() * (max - min + 1)) + min; //The maximum is inclusive and the minimum is inclusive 
}

猜你喜欢

转载自blog.csdn.net/qq_38053395/article/details/81388621
今日推荐