选择性JQuery验证

时间:2010-04-04 20:47:12

标签: asp.net textbox jquery-validate preset

我正在使用JQuery Validation来验证表单中的特定文本框。文本框是可选的website部分,它使用url验证方法。这工作正常并相应地验证。我希望将http://预设到文本框中,以保存用户必须键入它。但是,设置文本后,验证程序将变为“活动”,并且在手动删除http://或输入有效网站之前,会阻止提交表单上的任何内容。有没有办法在文本框中预先设置文本,这不会导致验证器开始验证?

我尝试使用

$("[id$='tbWebsite']").val("http://");

在我致电form.validate()之前,但它不起作用(即它仍然会被检查)。

我之前从未使用过JQuery Validator,所以希望我能解决这个错误!

特别是针对我的案例的替代解决方案,可以是在按下某个按钮时激活验证器(而不是表单上的任何按钮)。那可能吗?

由于

更新

我已将此添加到文本框声明中:

onfocus="if(this.value == 'http://' || this.value == '')this.value='http://'" onblur="if(this.value == 'http://')this.value=''" 

这解决了主要问题。但是,如果用户单击文本框,然后单击“离开”,则仍会显示错误消息(即使未强制执行,也可以提交表单)。如果值为'http://',那么确保错误消息根本不显示的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

仅在用户关注文本框时输入前缀,如果文本框失去焦点且前缀

,则将其删除