2014-07-03 44 views
0

有沒有人在這裏得到一個jQuery屏蔽庫與Autoform一起工作?我正在嘗試BootStrap表單助手使用Meteor Autoform + SimpleSchema的Javascript輸入掩碼插件?

<div class="col-md-12"> 
     <div class="form-group"> 
     {{> afFieldLabel name="customerInfo.agentPhone"}} 
     <input name="customerInfo.agentPhone" type="text" class="form-control track-order-change bfh-phone" required data-schema-key="customerInfo.agentPhone" data-format="ddd ddd-dddd"> 
     </div> 
    </div> 

我的customerInfo.agentPhone在我的模式中設置爲required。

當我執行此代碼時,我失去了驗證表單對模式的能力。輸入字段可以是空白的,並且說明該字段不能爲空的錯誤消息從不出現。

回答

1

我想到了。事實證明,我錯誤地使用了afFieldInput - 每次使用afFieldInput時,必須有#if語句才能更改包裝div的CSS以顯示驗證消息。

<div class="col-md-12 {{#if afFieldIsInvalid name="customerInfo.agentPhone"}}has-error{{/if}}"> 
     <div class="form-group"> 
     {{> afFieldLabel name="customerInfo.agentPhone"}} 
     {{> afFieldInput name="customerInfo.agentPhone" class="form-control track-order-change bfh-phone" data-format=" (ddd) ddd-dddd"}} 
     </div> 
    </div> 

注意兩件事情:

  1. 你必須把bfh-phone的類。
  2. 您必須在括號前面加上空格「(ddd)ddd-dddd」。如果你不這樣做,只是做「(ddd)ddd-dddd」(插入加載文本字段。很顯然,如果你正在檢查以確保文本字段不是空白的,它不會因爲(已經加載在那裏)而被觸發
+0

偶然你有一個完整的例子來分享嗎?我試圖做同樣的事情,但我很掙扎,因爲我不是Meteor/Autoform的專家。 – Aaron

+0

有一種更簡單的方法,只需將一個類傳遞給afFieldInput並使用其中一個JQuery遮罩庫。 – Aaron

0

我從來沒有使用自動窗體,但看着我不知道該文檔在你嘗試過這樣的:

{{> afFieldInput name="customerInfo.agentPhone" data-format="ddd ddd-dddd" }} 

(顯然將你以前可能設置爲afFieldInput任何附加屬性)