<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript">
//新创建一个元素节点,并把该节点添加为文档中指定节点的子节点
window.onload = function() {
//创建新的元素节点
var liNode = document.createElement("li");
var cityNode = document.getElementById("city");
//创建文本节点
var xmText = document.createTextNode("厦门");
//将文本节点添加到元素节点
liNode.appendChild(xmText);
cityNode.appendChild(liNode);
}
</script>
</head>
<body>
<p>你喜欢哪个城市?</p>
<ul id="city">
<li id="bj" name="beijing">北京</li>
<li>上海</li>
<li>武汉</li>
<li>深圳</li>
</ul>
<ul id="book">
<li id="xyj" name="xyj">西游记</li>
<li>三国演义</li>
<li>水浒传</li>
</ul>
</body>
</html>
Javascript实现
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript">
window.onload = function() {
//JS函数参数不需要类型
function showContent(liNode){
alert("^_^" + liNode.firstChild.nodeValue);
}
/*
var bjNode = document.getElementById("bj");
if(bjNode.id){
alert("存在id属性");//存在
}else{
alert("不存在id属性");
}
var shNode = document.getElementsByTagName("li")[1];
if(shNode.id){
alert("存在id属性");
}else{
alert("不存在id属性");//不存在
}*/
var liNodes = document.getElementsByTagName("li");
for(var i = 0; i < liNodes.length; i++){
liNodes[i].onclick = function(){
showContent(this);
}
}
var submit = document.getElementById("submit");
submit.onclick = function(){
//alert(1);
var types = document.getElementsByName("type");
//alert(types.length);
var typeValue = null;
for(var i = 0; i < types.length; i++){
if(types[i].checked){
typeValue = types[i].value;
break;
}
}
if(!typeValue){
alert("请选择类型");
return false;
}
var nameEle = document.getElementsByName("myName")[0];
var nameVal = document.getElementsByName("myName")[0].value;
var reg = /^\s*|\s*$/g;//去除前后空格
nameVal = nameVal.replace(reg, "");
if(nameVal == ""){
alert("请输入内容");
return false;
}
nameEle.value = nameVal;
//创建元素节点
var liNode = document.createElement("li");
//创建文本节点
var content = document.createTextNode(nameVal);
//将文本节点添加到元素节点
liNode.appendChild(content);
document.getElementById(typeValue).appendChild(liNode);
//为新添加的li添加onclick响应事件
liNode.onclick = function(){
showContent(liNode);
}
//取消form提交的行为
return false;
}
}
</script>
</head>
<body>
<p>你喜欢哪个城市?</p>
<ul id="city">
<li id="bj" name="beijing">北京</li>
<li>上海</li>
<li>武汉</li>
<li>深圳</li>
</ul>
<p>你喜欢哪本书?</p>
<ul id="book">
<li id="xyj" name="xyj">西游记</li>
<li>三国演义</li>
<li>水浒传</li>
</ul>
<br />
<form action="#" name="myForm">
<input type="radio" name="type" value="city"/>城市
<input type="radio" name="type" value="book"/>BOOK
<input type="text" name="myName"/>
<input type="submit" value="submit" id="submit"/>
</form>
</body>
</html>
JQuery实现
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript" src="js/jquery-1.7.2.js"></script>
<script type="text/javascript">
$(function() {
function showContent(li){
alert($(li).text());
}
//为所有li节点添加点击事件
$("li").click(function(){
showContent(this);
});
//为submit按钮添加响应事件
$(":submit").click(function(){
var $type = $(":radio[name='type']:checked");
if($type.length == 0){
alert("请选择类型");
return false;
}
var type = $type.val();//读取value值
//alert(type);
var $myName = $(":text[name='myName']");
//去除前后空格
var myName = $.trim($myName.val());
$myName.val(myName);//将文本框的值设置为去除前后空格之后的 值
//alert(myName);
if(myName.length == 0){
alert("请请输入内容");
return false;
}
//添加新节点
$("<li>" + myName + "</li>").appendTo("#" + type)
.click(function(){//方法连缀,添加点击事件
showContent(this);
});
//取消默认提交行为
return false;
});
})
</script>
</head>
<body>
<p>你喜欢哪个城市?</p>
<ul id="city">
<li id="bj" name="beijing">北京</li>
<li>上海</li>
<li>武汉</li>
<li>深圳</li>
</ul>
<p>你喜欢哪本书?</p>
<ul id="book">
<li id="xyj" name="xyj">西游记</li>
<li>三国演义</li>
<li>水浒传</li>
</ul>
<br />
<form action="#" name="myForm">
<input type="radio" name="type" value="city"/>城市
<input type="radio" name="type" value="book"/>BOOK
<input type="text" name="myName"/>
<input type="submit" value="submit" id="submit"/>
</form>
</body>
</html>
转载于:https://blog.51cto.com/shamrock/1564560