私はjquery-inputmask-rails gemを使用しています。最終的には、Robin Herbotsのinputmask jQuery pluginを引っ張っています。jQueryのお金入力マスクがレールプロジェクトで動作しません
jquery-inputmask-rails
宝石の指示に従って、私はapplication.js
でこれを置く:限り使用が行くように
$(document).on('turbolinks:load', function() {
$('.mask_phone').inputmask({mask: "(999) 999-9999"});
$('.mask_money').inputmask({alias: 'currency', rightAlign: true, placeholder: "", prefix: '', autoGroup: false, digitsOptional: true});
});
:
//= require jquery.inputmask
//= require jquery.inputmask.extensions
//= require jquery.inputmask.numeric.extensions
そしてここでは私の二つのマスクされているあなただけのことができるようにすべきです適切なマスキングクラスを入力に追加します。
<%= f.text_field :some_field, class: "mask_money" %>
問題は私ですそれはmask_phone
マスクが動作するが、mask_money
はまったく動作しないということです。私はログに気づくん
は、この意見:
TypeError: null is not an object (evaluating 'e.mask.toString')
奇妙なことは、別のプロジェクトであることである:私はjqueryの-inputmaskレールの宝石を使用していないが、代わりにjQueryの入力マスクをもたらしましたコードを直接Vendorディレクトリにコピーし、それがうまくいった。
私には何が欠けていますか?
正しいクラスをターゲットにしていますか? '$( '。mask_amount_in_cents') ' –
申し訳ありませんがタイプミス、私はそれを修正します。 – Neil
この文章では、「私が抱えている問題は、mask_phoneマスクは機能しますが、mask_amount_in_centsはまったく機能しません」。 "mask_amount_in_cents"も "mask_money"であるべきですか? –