2011-12-27 3 views
3

私のアプリケーションでは、特定の日付のデフォルト値を設定するJavaScriptがあります。これを行う関数は次のようになります。element.valueAsDate = xxx - もう動作しません...(javascript)

<script language='javascript'> 
setNow(document.getElementById('date_86')); //line 166 
setNow(document.getElementById('time_86')); 
setNow(document.getElementById('date_0')); 
setNow(document.getElementById('time_0')); 

    function setNow(element) { //line 173 
     date = new Date();date.setHours(date.getHours() + 3); 
     element.valueAsDate = date; 
    } 
... 
</script> 

HTML:

<input type='date' id='date_86' name='date_86' /> 

面白いことは、ごく最近まで、それが動作するために使用するということですが、今ではない、とChromeのコンソールは言います:

Uncaught Error: INVALID_STATE_ERR: DOM Exception 11 
setNowmanual.html:173 
(anonymous function)manual.html:166 

setNowはこのDOM内のオブジェクトではありませんなぜ私が正しく、このの意味を理解していれば、私は本当に、見ることができません。

PS:宣言と呼び出しを入れ替えたときに同じことが起こります。コンソールのレポートでは行番号だけが異なります。

+1

いくつかのHTMLも表示できますか? –

+1

サイドノート:HTML5を使用している場合、 '

5

ブラッディ地獄! クロムのブログ(source

こんにちは皆さんからの引用は、我々は次の入力タイプを無効にして、Google Chromeの 16は、それらを持っているつもりはありません。 日付、日時、日時 - ローカル、月、時刻、および。これらのタイプは、スピンボタンとの簡単なテキストフィールドインターフェースを持っています。 Google Chrome 16以降、有効な入力タイプとして認識されず、 はtype = textとして機能します。彼らは の不完全さのために無効にされました。彼らのユーザインタフェースは満足のいくものではなく、これらのタイプの存在が特徴検出にとって有害で​​あった。豊富な ユーザーインターフェイスの実装が完了したら、 を再度有効にします。 - Tentura、Kentソフトウェアエンジニア、

+0

既存のコードを壊さないように削除した方がいいでしょう。しかたがない。 – nnnnnn

関連する問題