【发布时间】:2013-04-25 11:00:44
【问题描述】:
我在验证用户在 textarea 中的输入时遇到问题。 假设用户在表单的文本区域字段之一中输入他的描述。但是有些人只是放了诸如“aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 之类的随机文本以绕过最小长度要求。
现在我想阻止用户输入这么长的文本而没有任何空格,因为它会破坏我页面的 UI。 用户输入的没有任何空格的长文本也可以是有效的 url。那么我该如何管理这个&只有当文本太长并且不是有效的 url 时才会向用户抛出错误以更正文本??
PS:我不想自己拆分字符串。我只想检测它并在客户端验证时向用户抛出错误。只是为了结束一些疑问,我将进行服务器端验证,在该验证中我将强行输入一个空间并将其保存在数据库中。但我希望在客户端解决这个问题
【问题讨论】:
-
你确定你正在解决一个真正的问题吗?有多少用户真正在做这件事?这真的很重要吗?尝试使用带有溢出省略号的 CSS。
-
我强烈建议你不要使用客户端输入过滤,这是非常糟糕的做法,很容易被绕过。
-
@JimmyvanBeele,为什么在客户端验证输入是不好的做法?
-
@DerekHenderson 因为如果有人在使用 Tor 自带的 NoScript,而且它也是 Firefox 的一个广泛使用的插件,验证将不起作用,因此问题仍然存在。这对整体安全性也不利,因为您让人们试图在客户端阻止 SQL 注入。
-
@JimmyvanBeele,如果有人在使用 JS,而您在服务器端进行了所有验证,那么您已经进行了不必要的服务器调用!良好的做法是在客户端和服务器端进行验证。
标签: javascript jquery jquery-validate validation