首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >左侧导航验证

左侧导航验证
EN

Stack Overflow用户
提问于 2012-03-14 21:16:56
回答 2查看 132关注 0票数 0

我有一个母版页,其中leftnavigation.jsp和header.jsp是leftnavigation包含超链接到几个网页(比如说general.jsp,contact.jsp).On点击这些超级链接,这些网页得到opened.like如果我点击一般链接,它会打开,如果我点击contact.jsp的链接,联系网页得到opened.Now这些网页有验证保存按钮在表单的结尾。

现在我想让这些验证(每个网页都有一个保存按钮上的验证功能)在用户单击左侧导航上的链接来更改网页时工作。leftnavigation.jsp不包含任何表单元素。它只包含链接或脚本,有什么建议吗?

EN

回答 2

Stack Overflow用户

发布于 2012-03-14 21:22:10

侦听导航链接上的click事件,然后运行验证函数:

代码语言:javascript
复制
function listen(event, elem, func) {
  if (elem.addEventListener) {
    elem.addEventListener(event, func, false);
  } else if (elem.attachEvent) {
    elem.attachEvent('on' + event, func);
  }
}

var links = document.getElementsByTagName('a');

listen('click', links, validationFunction);

如果你在传递变量,那么把你的验证函数封装在一个匿名函数中:

代码语言:javascript
复制
listen('click', links, function(param) { validationFunction(param); });
票数 0
EN

Stack Overflow用户

发布于 2012-03-14 21:32:26

听起来很简单。您可以使导航栏链接在单击时调用表单的验证函数。可能是这样的:

<a href="anotherpage.jsp" onclick="validate(); return true;>Click me!</a>

不过,这只是一个警告:不可能以这种方式保证验证,用户可以绕过验证(例如,用户可以单击后退按钮)。如果这就是您要尝试实现的目标,请考虑运行验证函数onpropertychangedonkeyup。而且,和往常一样,表单验证应该(几乎)不会成为障碍;如果用户输入错误,不要显示alert消息或做任何真正让人分心的事情。

注意上面的代码如何让用户更改页面,而不管表单的验证状态如何。如果表单验证失败,您可以让onclick函数返回false,但这是可以绕过的,这对用户来说是一种阻碍。

如果确实需要这样做,请让链接正常工作,但要显示一条小消息,可能是页面顶部悄悄弹出的div形式,警告用户他们的一个表单条目不正确。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9702765

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档