ul、li标签向servlet传值
第一种方法
<script type="text/javascript">
function flag(value) {
document.getElementById("flag1").value = value;
alert(value);
}
</script>
<form action="ForgetpwdServlet" method="post">
<br>
<input type="hidden" name="flag" id="flag1" value="email"/>
<ul >
<li ><a href="#email" name="email" onclick="flag(this.name)" >邮箱验证</a></li>
<li ><a href="#phone" name="mobile" onclick="flag(this.name)">手机号码验证</a></li>
</ul>
</form>
以下两种方式是相同的
<script type="text/javascript">
function flag(value) {
document.getElementById("flag1").value = value;
alert(value);
}
</script>
等价于
<script type="text/javascript">
function flag(value) {
document.getElementById("flag1").value = "";
var flag = value;
document.getElementById("flag1").value = flag;
alert(value);
}
</script>
这时,其中var 不可以漏掉,var 语句用于声明变量。在函数作用域内 加var定义的变量是局部变量,不加var定义的flag就成了全局变量。
第二种方法
<form action="ForgetpwdServlet" method="post">
<ul class="nav nav-pills" id="ulItem">
<li ><a href="#email" id="a1">邮箱验证</a></li>
<li ><a href="#phone" id="a2" >手机号码验证</a></li>
</ul>
<!--js必须在下-->
<script type="text/javascript">
var ulItem = document.getElementById("ulItem");
ulItem.onclick = function(e){
e = e || window.event;//这一行及下一行是为兼容IE8及以下版本
var target = e.target || e.srcElement;
if(target.tagName.toLowerCase() === "a"){
alert(target.innerHTML);
}
}
</script>
</form>