今天突然想到做注册中的用户名验证,也就是当用户输入了用户名之后,如果用户名存在就给出提示,并且将注册这个按钮禁用。
使用
[code="java"]<%= observe_field(:name,:frequency => 1,:update => :sp_name,:url => {:action=> :check_name},:with=>"name") %>[/code]成功的完成了ajax验证,但是我如何该写js代码,获取服务器传递到客户端的值,然后判断该值的内容,当用户名存在的时候禁用注册按钮,当用户名合法时让注册按钮启用?
按照以前java中使用ajax的经验,每个ajax都会调用一个回调函数,例如:
[code="java"]callback(content)
{
if content=="yes"
启用注册按钮
else
禁用注册按钮
};[/code]在这个回调函数中,content就是从服务器传递过来的值。
但是在rails中,<%= observe_field %>好像没有地方接受从服务器中传递回来的内容,而直接是使用
:update => :sp_name将服务器的内容直接更新到一个名叫sp_name的span中。请指点一下如何在 <%= observe_field %>中获得服务器中传递回来的值?并且根据这个值去禁用按钮