2010-01-25 94 views
1

看看这个验证演示:定位跨度?

http://jquery.bassistance.de/validate/demo/

的错误信息被放置在右侧的字段。

我已经在我的邮件中包含了跨度,并且希望将它们放在输入字段的左侧。我怎么用CSS做到这一点?

+0

你想在验证失败的输入向右移动还是你只是想在标签和输入 – 2010-01-25 13:28:21

回答

1

,如果你愿意,你可以搞出jquery.validate.js代码,并寻找这一行:

label.insertAfter(element); 

,并更改为:?

label.insertBefore(element); 
+0

试图说,这将推动输入元素的权利,这不是我想要的。但一个很好的攻击虽然:) – ajsie 2010-01-25 13:46:27

+0

我认为你只需要css它...如何给我们一些样本的html ...在之前和(应该)后期望的输出状态... – Reigel 2010-01-25 13:53:23

+0

为什么会当jquery.validate允许你自己定制错误位置时,你是否会破解它? – BBonifield 2010-01-25 14:12:26

1

你只是想用CSS移动它们(也就是说,没有改变那些元素出现在HTML中)?一种方法是:position: relative; left: -120px; top:-20px(或者你发现任何值把它们放在所需

+0

澄清之间更多的空间,我看的上的验证消息一组领域......更有能力的人看起来好像在没有移动其他东西的情况下没有空间。 。 。你可以做'float:left'将它们一直带到行的左边,并推动其他东西。 。 。或者只是将元素插入到不同的位置以开始(无论是在页面的HTML源代码中,还是使用JavaScript)。 – 2010-01-25 13:33:24

+0

问题是如果我使用像素定位它们,则较长的错误消息将覆盖输入字段,而较短的错误消息将远离左侧的输入字段。他们必须从输入字段中选择正确的位置。这是可能的与CSS? – ajsie 2010-01-25 13:38:44

+0

如果您可以更改页面的HTML(而不是仅仅应用CSS),我会尝试将错误消息和相应的输入字段放在div中,然后将'float:left'应用于错误消息。 (如果你没有在div中包含它,它将一直浮在行的左边 - 即,甚至在“名字”,“姓氏”等的左边。 - 哪个我不认为是你想要的。) – 2010-01-25 14:16:38