原文

  https://www.jianshu.com/p/b01f32844ac1

大纲

  1、单选框多选框实现的商品选择
  2、添加下拉框和删除下拉框
  3、观察textarea中事件处理器的运行顺序
  推荐

1、单选框多选框实现的商品选择

<html>
<head>
<title>Test</title>
<script>
var radCpuSpeedIndex = 0;
function radCPUSpeed_onclick(radIndex) {
var returnValue = true;
if (radIndex == 1) {
returnValue = false;
alert("Sorry that processor speed is currently unavailable");
/**
Next line works around a bug in IE that doesn't cancel
the Default action properly
*/
document.form1.radCPUSpeed[radCpuSpeedIndex].checked = true;
} else {
radCpuSpeedIndex = radIndex;
}
return returnValue;
} function butCheck_onclick() {
var controlIndex;
var element;
var numberOfControls = document.form1.length;
var compSpec = "Your chosen processor speed is ";
compSpec =
compSpec + document.form1.radCPUSpeed[radCpuSpeedIndex].value;
compSpec =
compSpec + "\nWith the following additional components\n";
for (controlIndex = 0; controlIndex < numberOfControls; controlIndex++) {
element = document.form1[controlIndex];
if (element.type == "checkbox") {
if (element.checked == true) {
compSpec = compSpec + element.value + "\n";
}
}
}
alert(compSpec);
}
</script>
</head>
<body>
<form name="form1">
<p>Tick all of the components you want included on your computer </p>
<br>
<br>
<table>
<tr>
<td>DVD-ROM</td>
<td>
<input type="checkbox" name="cnkDVD" value="DVD-ROM">
</td>
</tr>
<tr>
<td>CD-ROM</td>
<td>
<input type="checkbox" name="cnkCD" value="CD-ROM">
</td>
</tr>
<tr>
<td>ZIP-ROM</td>
<td>
<input type="checkbox" name="cnkZIP" value="ZIP DRIVE">
</td>
</tr>
</table>
<p>Select the processor speed you require </p>
<br>
<br>
<table>
<tr>
<td>
<input type="radio" name="radCPUSpeed" checked onclick="return radCPUSpeed_onclick(0)" value="3.8 GHz">
</td>
<td>3.8 GHz</td>
</tr>
<tr>
<td>
<input type="radio" name="radCPUSpeed" checked onclick="return radCPUSpeed_onclick(1)" value="4.8 GHz">
</td>
<td>4.8 GHz</td>
</tr>
<tr>
<td>
<input type="radio" name="radCPUSpeed" checked onclick="return radCPUSpeed_onclick(2)" value="6 GHz">
</td>
<td>6 GHz</td>
</tr>
</table>
<input type="button" value="Check Form" name="butCheck" onclick="return butCheck_onclick()">
</form>
</body>
</html>

2、添加下拉框和删除下拉框

<html>
<head>
<title>Test</title>
<script>
function butRemoveWeb_onclick(){
if(document.form1.theDay.options[2].text == "Wednesday"){
document.form1.theDay.options[2] = null;
}else{
alert("There is no Wednesday here!");
}
console.log(document.form1.theDay.selectedIndex);
}
function butAddWed_onclick(){
if(document.form1.theDay.options[2].text != "Wednesday"){
var indexCounter ;
var days = document.form1.theDay;
var lastoption = new Option();
days.options[6] = lastoption;
for(indexCounter = 6;indexCounter >2; indexCounter--){
days.options[indexCounter].text = days.options[indexCounter -1].text;
days.options[indexCounter].value = days.options[indexCounter -1].value;
}
var option = new Option("Wednesday",2);
days.options[2] = option;
}
else{
alert("Do you want to have TWO Wednesday????");
}
console.log(document.form1.theDay.selectedIndex);
}
</script>
</head>
<body>
<form name="form1">
<select name=theDay size=5>
<option value=0 selected>Monday
<option value=1>Tuesday
<option value=2>Wednesday
<option value=3>Thursday
<option value=4>Friday
<option value=5>Saturday
<option value=6>Sunday
</select>
<br>
<input type="button" value="Remove Wednesday" name=butRemoveWeb onclick="butRemoveWeb_onclick()">
<input type="button" value="Add Wednesday" name=butAddWeb onclick="butAddWed_onclick()">
</form>
</body>
</html>

3、观察textarea中事件处理器的运行顺序

<html>
<head>
<title>Test</title>
<script>
//观察textarea中事件处理器的运行顺序
function DisplayEvent(eventName){
var myMessage = window.document.form1.textarea2.value;
myMessage = myMessage + eventName;
window.document.form1.textarea2.value = myMessage;
}
</script>
</head>
<body>
<form name="form1">
<textarea rows=15 cols=40 name=textarea1
onchange = "DisplayEvent('onchagen\n');"
onkeydown = "DisplayEvent('onkeydown\n');"
onkeypress = "DisplayEvent('onkeypress\n');"
onkeyup = "DisplayEvent('onkeyup\n\n');"
></textarea>
<textarea rows=15 cols=40 name=textarea2></textarea>
<br><br>
<input type="button" value="Clear Event TextArea"
name=button1 onclick="window.document.form1.textarea2.value=''"
>
</form>
</body>
</html>

推荐

  在这里推荐两篇同样是我写的博客,一篇是详细的关于表单以及表单元素的知识点的文章Html表单元素及表单元素详解,还有一篇是我使用表单的过程中遇到的一些问题以及相应解释Html表单中遇到的问题,同样希望能对读者有所帮助。

Html表单使用实例的更多相关文章

  1. Bootstrap+PHP表单验证实例

    简单实用的Bootstrap+PHP表单验证实例,非常适合初学者及js不熟悉者,还有ajax远程验证 js验证表单 1 $(document).ready(function() { 2 $('#def ...

  2. jQuery-easyui和validate表单验证实例

    jQuery EasyUI 表单 - 表单验证插件validatebox 使用时需要向页面引入两个css文件如下: <link rel="stylesheet" href=& ...

  3. 034——VUE中表单控件处理之使用vue控制radio表单的实例操作

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. jquery-4 完整表单验证实例

    jquery-4 完整表单验证实例 一.总结 一句话总结:在form的jquery对象中返回false即可终止表单提交. 1.验证的显示错误消息如何布局? 开始时隐藏,出现错误后显示 10 .erro ...

  5. React 表单元素实例

    代码实例: <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset=" ...

  6. HTML5 web Form表单验证实例

    HTML5 web Form 的开发实例! index.html <!DOCTYPE html> <html> <head> <meta charset=&q ...

  7. 纯原生javascript下拉框表单美化实例教程

    html的表单有很强大的功能,在web早期的时候,表单是页面向服务器发起通信的主要渠道.但有些表单元素的样式没办法通过添加css样式来达到满意的效果,而且不同的浏览器之间设置的样式还存在兼容问题,比如 ...

  8. JavaScript表单验证实例

    1. 长度限制<script>function test(){if(document.a.b.value.length>50){alert("不能超过50个字符!" ...

  9. Yii 框架表单验证---实例

  10. angular表单验证实例----可用的代码

    前段时间,公司做一个单页面,就是一个表单验证,早开始在菜鸟教程上关注了angular,所以下派上用场了 angular里面对于表单验证,设置了很多指令. 也就是说不用自己写一些逻辑,直接绑定指令就行. ...

随机推荐

  1. Android中级第九讲--相机调焦

    博客出自:http://blog.csdn.net/liuxian13183,转载注明出处! All Rights Reserved ! 相机调焦:原理,使用竖直seekbar,根据用户拖拉来获得距离 ...

  2. Java&amp;Xml教程(九)Java中通过XSD校验XML合法性

    Java XML校验API可以通过XSD(XML Schema Definition)校验XML文件内容的合法性. 在以下的案例中使用javax.xml.validation.Validator 类通 ...

  3. PHP JSON的BUG

    将下面的数组进行 JSON 编码时出错,编码中丢掉了最后一维数组中的下标. Array ( [1] => Array ( [0] => Array ( [0] => Array ( ...

  4. Objective-C基础笔记(9)Foundation常用类NSArray

    NSArray用来存储对象的有序列表,它是不可变的 NSArray不能存储C语言中的基本数据类型,如int.float.enum.struct,也不能存储nil,nil代表数组元素的结束 // // ...

  5. Linux桌面新彩虹-Fedora 14 炫酷应用新体验

    Linux桌面新彩虹 --Fedora 14 炫酷应用新体验 650) this.width=650;" hspace="12" align="left&quo ...

  6. JAVA Mail邮件实现发送

    package com.test;import java.util.Date;import java.util.Properties;import javax.mail.Message;import ...

  7. element-UI 表单校验失效处理

    1.el-form-item 的 prop属性绑定的要是字符串: eg: :prop="'answer[' + 0 + ']' "       //而不是    :prop=&qu ...

  8. 3.字符设备驱动------Poll机制

    1.poll情景描述 以之前的按键驱动为例进行说明,用阻塞的方式打开按键驱动文件/dev/buttons,应用程序使用read()函数来读取按键的键值. ) { read(fd, &key_v ...

  9. CentOS 7最小化安装图解

    一.环境介绍: win10 x64安装VMware® Workstation 14 Pro(版本:14.1.2 build-8497320) 二.安装CentOS 1.新建虚拟机 打开虚拟机,主页,创 ...

  10. WPF 入门《布局面板》

    常见的几个布局面板 1.StackPanel面板 StackPanel面板能够简单根据单行或者单列进行元素排列, StackPanel 默认的布局方向为垂直方向(Vertical), 由Orienta ...