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