我在如下页面中有几个带有客户端类验证失败的 div。中间的文本可以从 div 更改为 div。
<div class="validation-failure">At least one of the above 2 fields needs to be entered</div>
我在网站上也显示服务器端验证错误,如下所示
<div id="messages_product_error_view">
<ul>
<li>At least one of the above 2 fields needs to be entered</li> </ul>
</div>
现在我想确保当显示客户端验证并且文本与服务器端验证相同时,则只显示客户端验证。但是,如果客户端验证错误为空 div,则显示服务器端验证。我认为这可以通过 jquery 来完成。请帮忙?
你好
我想在任何文本出现在 div 上时立即捕获。
这就是正在发生的事情。
当用户在输入字段中键入时,客户端 js 启动并显示客户端 js 验证错误消息。
然而,在极少数情况下,他们已经能够绕过 js 或 js 验证不正确。所以服务器端验证逻辑已经使用 php 就位。
现在,当在输入字段中输入内容时,客户端验证开始......如果用户按下提交,服务器端验证也会出现......
我只想显示客户端......如果客户端不存在则显示服务器端......你提出的解决方案有效..但是如果用户继续输入错误输入客户端站点验证消息,则在页面中再次继续与服务器端仍然存在。因此需要以某种方式检测用户何时在输入中键入任何内容,然后如果出现客户端验证则不显示服务器端
最佳答案
var clientSide = $(".validation-failure");
var serverSide = $("#messages_product_error_view li");
if (serverSide.text() == clientSide.text()) {
serverSide.hide();
clientSide.show();
} else if (clientSide.text().length == 0) {
serverSide.show();
clientSide.hide();
}
关于javascript - 如果客户端验证文本相同并显示,如何不显示服务器端验证消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23759539/