总也睡不醒
一个人只拥有今生今世是不够的,他还应该拥有诗意的世界
posts - 3,  comments - 5,  trackbacks - 0
今天,写程序遇到一个怪现象。js表单验证时,不管表单数据是否符合数据,页面仍然发送出去。后来发现是我在js方法内使用了页面上没有的表单元素。

错误代码如下:
// frm表单提交前的验证。
function checkOnSubmit() {
    frmTxt5 
= document.getElementById("c_dzh1");
    frmTxt6 
= document.getElementById("c_dzh2");
    
    
if (!verify_null(frmTxt5.value, "单证号")) {
        frmSelect.focus();
        
return false;
    }
 else if (!verify_equal(frmTxt5.value, frmTxt6.value, "两次输入的单证号必须一样!")) {
        frmTxt3.focus();
        
return false;
    }
 else {
        
return true;
    }

}

代码中红色的就是页面上没有的元素。因为是从另一个文件复制来的,所以忘改了。红色部分分别改成frmTxt5和frmTxt6就可以了。

不过我就是奇怪,“return false;”咋不起作用。因为表单要发送,onSubmit事件需要“return true;”才行。也就是说上面的代码checkOnSubmit()总是返回true。红色部分的错误造成了下面的代码没有执行??JavaScript真是让我匪夷所思!既不报错,也不干活,让我找了半天才发现错误。
posted on 2007-07-30 12:05 总也睡不醒 阅读(1201) 评论(3)  编辑  收藏 所属分类: 问题记录

FeedBack:
# re: js表单验证时,不通过但仍然发送表单
2008-03-20 13:19 | 路过
解决了吗  回复  更多评论
  
# re: js表单验证时,不通过但仍然发送表单
2014-08-28 14:39 | 发斯蒂芬
倒萨打算  回复  更多评论
  
# re: js表单验证时,不通过但仍然发送表单
2015-10-10 16:47 | ewe
dsd  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航:
 
一点一滴,完善自我

<2024年12月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

常用链接

留言簿

随笔分类

随笔档案

文章分类

文章档案

收藏夹

搜索

  •  

最新评论