0
在我的模型,我有以下几点:Ruby on Rails的:使用除非验证,JQuery验证
attr_accessor :address, :located_in_us
validates_length_of :address, :in => 1..50, :message => "Required field, please enter your address."
在我的形式,我有,询问他们是否被设在美国的一个单选按钮。如果他们选择“是”,那么我想要地址字段是必需的。当他们点击“否”时,我有一个隐藏包含地址的DIV的显示/隐藏,但表单永远不会提交,因为该字段即使隐藏,仍然是必需的。
我试过如下:
validates_length_of :address, :in => 1..50, :message => "Required field, please enter your address.", :unless => :located_in_us == "1"
但它似乎并没有工作,因为地址添加下面的JavaScript看起来像这样:
<script type='text/javascript'>$(function() { $('[name="myform[address]"]').rules('add', {"maxlength":50,"required":true,"unless":false,"minlength":1,"messages":{"required":"Required field, please enter your address."}});});</script>
我的问题是...怎么办我制作表格,以便当用户单击“否”单选按钮(他们不居住在美国)时,地址字段不再是必填字段?
我想你给我的,现在的JavaScript看起来像这样:'code'“除非”:{} – ews2001 2012-04-23 14:09:35
@ ews2001我给的代码是在服务器端验证。我用一些我认为可能有用的客户端代码更新了我的答案。让我知道。 – tsherif 2012-04-23 14:50:03
您的javascript是有道理的,但我的问题中显示的行是由对象自动创建并添加到页面源。我如何操作由对象创建的JavaScript,或者至少强制它使用自定义js并关闭默认脚本创建? – ews2001 2012-04-23 17:59:00