2012-05-24 45 views
3

我有一個text_field_tag用戶輸入電話號碼。我需要在用戶輸入電話號碼後重新格式化電話號碼,例如:(XXX) XXX XXXX。我創建了一個Java腳本,它會爲我做,但我怎麼能把它添加到這個紅寶石線代碼?如何在Rails中格式化電話號碼?

JavaScript方法------> formatNumber(數量)

<%= text_field_tag :mobile_number, '', :class => 'email-address' %> 

回答

7

如果您使用Rails的,它更容易使用內置#number_to_phone幫手,而不是自定義JavaScript。

+1

謝謝,我怎麼能在標籤內呼叫number_to_phone? <%= text_field_tag:mobile_number,'',:class =>'email-address'%> – Ali

+0

如果您想在瀏覽器中進行格式化(在表單上),您將需要使用javascript。如果你想在表單發送後格式化它(例如存儲在數據庫中),那麼你可以使用number_to_phone –

+1

答案指出我真正想要的是什麼,它不是視圖的助手,而是原始的方法。它是'ActiveSupport :: NumberHelper.number_to_phone(number,options)'。只要看看鏈接的來源。 –

0

有2種方法可以在JavaScript中使用ruby變量和方法。 1)在.js.erb中使用它(通常用於渲染ajax方法) 2)可能是你的情況,有點醜,但是你可以在你的html.erb視圖中嵌入你的javascript