0

Rails アプリケーションでタイム ピッカーが必要です。jquery の datebox は完璧に思えますが、機能させることができません。

私のapplication.html.hamlには

%link{:href => "http://code.jquery.com/mobile/latest/jquery.mobile.min.css", :rel => "stylesheet", :type => "text/css"}/
%link{:href => "http://dev.jtsage.com/cdn/datebox/latest/jqm-datebox.min.css", :rel => "stylesheet", :type => "text/css"}/
%script{:src => "http://code.jquery.com/mobile/latest/jquery.mobile.min.js", :type => "text/javascript"}
%script{:src => "http://dev.jtsage.com/cdn/datebox/latest/jqm-datebox.core.min.js", :type => "text/javascript"}
%script{:src => "http://dev.jtsage.com/cdn/datebox/latest/jqm-datebox.mode.calbox.min.js", :type => "text/javascript"}
%script{:src => "http://dev.jtsage.com/cdn/datebox/i18n/jquery.mobile.datebox.i18n.en_US.utf8.js", :type => "text/javascript"}

そして私のhamlコード

%label{:for => "mydate"} Some Time
%input#mydate{"data-options" => "{\"mode\" => \"flipbox\"}", "data-role" => "datebox", :name => "mydate", :type => "date"}/

これは、ここに示すように翻訳されますhttp://cl.ly/image/1Y0t210L3a3c

私がいつも持っているエラーはhttp://cl.ly/image/1a0l3A20471rです

datebox とは別のボックス タイプを試しましたが、calbox のみが機能します。

ありがとう

4

2 に答える 2

3

さて、あなたの問題の一部は次の行かもしれません:

%script{:src => "http://dev.jtsage.com/cdn/datebox/latest/jqm-datebox.mode.calbox.min.js", :type => "text/javascript"}

これは「calbox」モードのみをロードしています。上記の haml コードのように、フリップボックスを使用する場合は、次のいずれかが必要です。

%script{:src => "http://dev.jtsage.com/cdn/datebox/latest/jqm-datebox.mode.flipbox.min.js", :type => "text/javascript"}

次の問題は (おそらく) 翻訳されたコード スニペットにあります。オブジェクト内の各項目と同様に、データ オプションは二重引用符で囲まれています。ブラウザによっては、javascript の解析で問題が発生します。data-options を使用せず、代わりに長いオプションを使用することもできます...つまり:

data-datebox-mode="calbox"

(注: しばらくの間、長いオプションをテストしておらず、それがどのように機能するかを完全には覚えていません。失敗した場合はお知らせください。)

それ以外の場合は、適切に動作させるために、haml パーサーをいじる必要があるかもしれません。

于 2013-04-23T20:27:12.787 に答える
1

data-options 部分は一重引用符で囲む必要があります。二重引用符を使用してもうまくいきませんでした

data-options='{"mode":"datebox"}'
于 2013-10-24T11:21:37.277 に答える