HTMでよく使われるElementのJavascriptの使い方(Form、Table、List)
12387 ワード
Form in HTML
Table in HTML
List in HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>A sample Form Using Get</title>
</head>
<body BGCOLOR="#FDF5E6">
<h2 Align="center">A Sample Form Using Get</h2>
<form id="infoForm" method="get" action="parameters">
First name: <input id="firstName" type="text" name="firstName"
value="Jingyang" /><br /> Last name: <input id="lastName" type="text"
name="lastName" value="Yu" />
<p />
<input type="radio" name="sex" id="male" value="male"/>Male<br /> <input
type="radio" name="sex" id="female" value="female"/>Female
<p />
<input type="checkbox" name="vehicle" value="Bike" id="bike" />I have
a bike<br /> <input type="checkbox" name="vehicle" value="Car"
id="car" onclick="displayCarSelect()" />I have a car <select
name="cars" style="display: none" id="carSelect">
<option value="volvo">Volve</option>
<option value="audi">Audi</option>
<option value="bmw">BMW</option>
<option value="vw">VW</option>
</select>
<p />
<p />
<input type="button" value="submit" id="sub"/>
</form>
</body>
</html>
<script type="text/javascript">
function displayCarSelect() {
if (document.getElementById("car").checked)
document.getElementById("carSelect").style.display = "block";
else
document.getElementById("carSelect").style.display = "none";
}
function trim(s) {
return s.replace(/^\s*/, "").replace(/\s*$/, "");
}
function check() {
var firstName = document.getElementById("firstName").value;
var form = document.getElementById("infoForm");
var lastName = form.lastName.value;
var error = "";
if (trim(firstName) == null || trim(firstName) == "") {
error += "
first name can not be empty";
form.firstName.focus();
}
if (trim(lastName) == null || trim(lastName) == "") {
error += "
last name can not be empty";
form.lastName.focus();
}
if(!document.getElementById("male").checked&&!document.getElementById("female").checked){
error+="
please select your sex";
}
if (error != "") {
alert(error);
} else {
form.submit();
}
}
document.getElementById("sub").onclick=check;
</script>
Table in HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>access table element</title>
</head>
<body>
<div id="change">
Change the
<input id="rowToChange" type="number" size="2"/> row,
the <input id="colToChange" type="number" size="2" /> column with the value
<input id="value" type="text" size="16"/>
<input id="btnChange" type="button" value="Change" onclick="change()"/>
</div>
<br/><br/>
<div id="insert">
Insert in the
<input id="rowToInsert" type="number" size="2"/> row,
with the First name:
<input id="firstName" type="text" size="16"/> and the
Last name:
<input id="lastName" type="text" size="16"/>
<input id="btnInsert" type="button" value="Insert" onclick="insert()"/>
</div>
<br/><br/>
<div id="delete">
Delete the
<input id="rowToDelete" type="number" size="2"/> row
<input id="btnDelete" type="button" value="Delete" onclick="deleteRow()"/>
</div>
<br/><br/>
<div id="table">
<table id="t" border="1">
<caption>Name Table</caption>
<thead>
<tr>
<th>First Name</th>
<th>Last Name</th>
</tr>
</thead>
<tr>
<td>Jingyang</td>
<td>Yu</td>
</tr>
<tr>
<td>Yufeng</td>
<td>Guo</td>
</tr>
<tr>
<td>Christian</td>
<td>Meier</td>
</tr>
</table>
</div>
<br/><br/>
<div id="getValue">
Display the
<input id="rowToSelect" type="number" size="2"/> row,
the <input id="colToSelect" type="number" size="2" /> column with the value
<input id="btnGet" type="button" value="Get" onclick="get()"/><br/>
<textarea id="textForSelect" rows="2" cols="10" readonly></textarea>
</div>
</body>
</html>
<script type="text/javascript">
function get(){
var table=document.getElementById("t");
var row = document.getElementById("rowToSelect").value;
row = parseInt(row);
var col=document.getElementById("colToSelect").value;
col= parseInt(col);
if(isNaN(row)){
alert("the input of the row must be a number");
return false;
}
if(isNaN(col)){
alert("the input of the column must be a number");
return false;
}
if(row>table.rows.length ||col>table.rows.item(row-1).cells.length){
alert("selected table cell is not exist");
return false;
}
//alert( t.rows[row-1].cells[col-1].innerHTML);
document.getElementById("textForSelect").innerHTML=t.rows[row-1].cells[col-1].innerHTML;
}
function change(){
var table=document.getElementById("t");
var row = document.getElementById("rowToChange").value;
row = parseInt(row);
var col=document.getElementById("colToChange").value;
col= parseInt(col);
if(isNaN(row)){
alert("the input of the row must be a number");
return false;
}
if(isNaN(col)){
alert("the input of the column must be a number");
return false;
}
if(row>table.rows.length ||col>table.rows.item(row-1).cells.length){
alert("selected table cell is not exist");
return false;
}
t.rows[row-1].cells[col-1].innerHTML = document.getElementById("value").value;
}
function trim(s) {
return s.replace(/^\s*/, "").replace(/\s*$/, "");
}
function insert(){
var table=document.getElementById("t");
var row = document.getElementById("rowToInsert").value;
row = parseInt(row);
var firstName = document.getElementById("firstName").value;
var lastName = document.getElementById("lastName").value;
if(trim(firstName)==null||trim(firstName)==""){
alert("first name can not be empty");
return false;
}
if(trim(lastName)==null||trim(lastName)==""){
alert("last name can not be empty");
return false;
}
if(isNaN(row)){
alert("the input of the row must be a number");
return false;
}
if(row>table.rows.length){
var r = confirm("the row number is bigger than the current table.
"+"The value will be inserted into the end of the table");
if(r==true){
var r= table.insertRow(table.rows.length);
r.insertCell(0).innerHTML = firstName;
r.insertCell(1).innerHTML = lastName;
}else{
return false;
}
}
var r= table.insertRow(row);
r.insertCell(0).innerHTML = firstName;
r.insertCell(1).innerHTML = lastName;
}
function deleteRow(){
var table=document.getElementById("t");
var row = document.getElementById("rowToDelete").value;
row = parseInt(row);
if(isNaN(row)){
alert("the input of the row must be a number");
return false;
}
if(row>=table.rows.length){
var r = confirm("the row number is bigger than the current table.
"+"The lat row will be deleted.");
if(r==true){
table.deleteRow(table.rows.length-1);
}else{
return false;
}
}
var firstName = table.rows[row].cells[0].innerHTML;
var lastName = table.rows[row].cells[1].innerHTML
var r = confirm("Do you want to delete the name:'"+firstName+" "+lastName+"' in the table?" );
if(r==true){
table.deleteRow(row);
}else{
return false;
}
}
</script>
List in HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Sample List</title>
</head>
<body>
<div id="list">
Courses:
<ul id="courses">
<li>Software Engineering</li>
<li>Database</li>
</ul>
</div>
<div id="insert">
Insert course's name into the list:
<input type="text" id="value" size="20"/>
<input type="button" id="btnInsert" value="Insert" onclick="insert()"/>
</div>
<br/><br/>
<div id="insertBefore">
Insert course's name on the top of the list :
<input type="text" id="value2" size="20"/>
<input type="button" id="btnInsertBefore" value="Insert Before" onclick="insertOnTop()"/>
</div>
</body>
</html>
<script type="text/javascript">
function trim(s) {
return s.replace(/^\s*/, "").replace(/\s*$/, "");
}
function insert(){
var ul= document.getElementById("courses");
var li = document.createElement("li");
var value = document.getElementById("value").value;
if(trim(value)==null||trim(value)==""){
alert("can not insert cours without name");
return false;
}
li.innerHTML= value;
ul.appendChild(li);
}
function insertOnTop(){
var ul= document.getElementById("courses");
var li = ul.firstChild.nextSibling.cloneNode(false);
var value = document.getElementById("value2").value;
if(trim(value)==null||trim(value)==""){
alert("can not insert cours without name");
return false;
}
li.innerHTML= value;
ul.insertBefore(li,ul.firstChild);
}
</script>