2011-11-09 18 views
0

Safariブラウザを使用して、DD/MM/yyyy形式で表示するには、構文エラーになります。 jqueryを使ってそれらを表示する方法はありますか?事前のおかげでサファリの日付[dd/mm/yyyy]が無効ですか?私は</p> <blockquote> <p>dd/mm/yyyy</p> </blockquote> <p>形式で日付形式を表示しようとすると、どのようにjqueryの

 function parseDate(input) { 
     var d= new Date(input); 
     return d.format("dd-mm-yyyy");//"dd/mm/yyyy" 
    }//works on chrome not in safari 
+0

サーバー側でそれをやっていない理由を、あなたの現在のコード –

+0

は何ですか? – Flo

+0

コードを入れました – dude

答えて

1

私はdate format pluginfiddle hereを使用して、サンプルコードの迅速なデモを作成したのだが、Safariで正常に動作するように見えます。しようとする

もの:

  • あなたはinputにして渡している日付の形式を確認し、有効な日付オブジェクト
  • はjavascriptのプラグインが正しくページに含まれていることを確認しており、古いバージョンがSafariによってキャッシュされていないことを示します。

エラーが発生した場合は、Safariのエラーに関する詳細情報をご提供ください。

UPDATE

あなたは今、あなたがDate()オブジェクトに文字列を渡していると述べてきたように、私は問題を見ることができます。 Safariはそれが受け入れるものについて非常に厳格です。したがって、有効なDateオブジェクトを作成するには、最初に文字列を解析する必要があります。以下試してみてください:

//var d = new Date("2011-11-02"); // This will work for the vast majority of browsers - but not safari 

function parseDate(input) { 
    var parts = input.match(/(\d+)/g); 
    return new Date(parts[0], parts[1]-1, parts[2]); 
} 

var d = parseDate("2011-11-02"); 
alert(d.format("dd-mm-yyyy")); 

あなたはこのフィドルでそれをテストすることができます。http://jsfiddle.net/Ly4vb/1/

+0

SyntaxError:無効な日付(未定義、0) " – dude

+0

これは、プラグインが現在の日付を認識していないことを意味します。有効なものとして渡されます。あなたはそれを与えている日付は何ですか? –

+0

2011-11-02これは入力形式ですが、Firefoxでの出力が表示されます。問題はサファリで表示されます – dude

関連する問題