10

クレジットカードの有効期限フィールドにmonthpicker入力(jQuery UI datepickerと同様)を使用しています。

月のピッカーが非表示になるため、iPhoneのキーパッドを非表示にする必要があります。

フィールドを読み取り専用に設定しようとしましたが、これは受け入れられない解決策です。SafariiOS 5.1では、キーボードナビゲーション(キーパッドの前/次のボタン)で読み取り専用フィールドがスキップされます。フィールドをぼかすことも検証をトリガーするため受け入れられません(jQuery検証も使用しています)。

読み取り専用に設定したり、ぼかしたりせずに、単一のフィールドでiPhoneキーボードをオフにする方法はありますか?

4

2 に答える 2

5

私はキーボードを隠す方法に出くわしていません。しかし、「入力」を表示する別の方法を考えたことはありますか。1つのオプションは<input type="month" />、iOS5でネイティブの月ピッカーをもたらすを使用することです。

2番目のオプションはスタイリングです。入力要素としてspan要素(-webkit-appearanceはiOSでは機能しません)、および要素のtabindexを追加します。これも機能する可能性がありますが、使用している月ピッカーはわかりません。

3番目のオプション-フィールドのぼかしが手動でトリガーされたときに検証プロセスを防ぐことはできませんか?

于 2012-03-22T10:30:36.970 に答える
2

Drupalでも同じ問題が発生し、入力フィールドが動的に追加されるため、jsを追加し、iPhone / Ipadをチェックして、「読み取り専用」プロパティを追加しました。

var checkUserAgent = navigator.userAgent;
    if (checkUserAgent.match(/iPad/i) || checkUserAgent.match(/iPhone/i)) {
        var checkBabyId1 = $('#babys_due_date_id').length > 0;
        if (checkBabyId1 == true) {
            $('#babys_due_date_id').find('input').prop('readonly', true);
        }
    }
于 2015-05-26T06:53:14.013 に答える