2

我正在使用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://”,那么确保根本不显示错误消息的最佳方法是什么?

4

1 回答 1

1

仅当用户聚焦空文本框时才放入前缀,如果文本框失去焦点且包含前缀,则将其删除

于 2010-04-04T20:50:40.697 回答