无论是会员注册还是提交订单,我们都要使用到form表单,此时我们在处理数据时,就要判断用户填写的信息。一次是直接通过js判断input输入框是否没有填信息,然后在后台处理文件中通过过滤字符串后再次判断是否确实有内容了。
我遇到的问题:(记下来,下次忘记了再回来看看)
js判断input输入框判断为空, 弹窗后,光标没有定位到输入框,而是直接执行我的处理数据程序。
我错误的原因是,在js代码中定位光标时代码写错了,注明为黄色字体
JS代码部分:
<!-- js判断是否为空 --> <script language="javascript"> function check() { if (addnav.navname.value=="") { // 如果导航名称,则显示警告信息 alert("导航名称不能为空!"); addnav.id.focus(); return false; } if (addnav.id.value=="") { // 如果排序吗为空,则显示警告信息 alert("排序码不能为空!"); addnav.id.focus(); return false; } //return true; } </script>
HTML代码:
<form action="doaddnav.php" method="post" name="addnav" onsubmit="return check()"> <tr> <tr> <td>请输入导航名称:</td> <td><input type="text" name="navname"></td> </tr> <tr> <td>请输入排序码(越小越前):</td> <td><input type="text" name="orders"></td> </tr> <tr> <td><input type="submit" name="submit" value="提交" ></td> <td><input type="reset" name="reset" value="重置"></td> </tr> </form>
我不会写js代码,这个代码是从别处拷贝过来的,自己改了改,就拿来用,不知道id是表示什么。因为我是要它判断为空时,光标定位到输入框,此时我们怎么 获取呢?
解决方法:js代码定位光标焦点,通过input框的name属性来获取。
主要通过form表单中可以通过input标签的name值来获取;另一种方法是通过id来获取的是使用这个函数getElementById().