2012-02-16 7 views
0

私は、mySQL datetime stampとcountdownを現在のシステム時刻に変換する必要があるアプリケーションがあります。私は正しくインストールされ、動作するキース木jqueryのカウントダウンを使用しています...しかし私は私の人生を保存するために働く私のタイムスタンプを変換するコードを取得することはできません。jquery mySQLタイムスタンプ変換コードのバグ

このコードスニペットはタイムスタンプをどこかに変換していましたが、firefoxコンソールにはエラーが表示されています:timestamp.replaceは関数ではありません。私はjsコーディングの専門家ではないので、それは明らかなことです。誰でも助けることができれば大いに感謝します。これは私をナッツにし始めている。

これはレールアプリケーションです。

$(document).ready(function mysqlTimeStampToDate(timestamp) { 
    //function parses mysql datetime string and returns javascript Date object 
    //input has to be in this format: 2007-06-05 15:26:02 
    var regex=/^([0-9]{2,4})-([0-1][0-9])-([0-3][0-9]) (?:([0-2][0-9]):([0-5][0-9]):([0-5][0-9]))?$/; 
    var parts=timestamp.replace(regex,"$1 $2 $3 $4 $5 $6").split(' '); 
    return new Date(parts[0],parts[1]-1,parts[2],parts[3],parts[4],parts[5]); 
}); 

$(document).ready(function() { 
    $('textLayout').countdown({until: mysqlTimeStampToDate("#work_order_hard_completion_datetime"), layout: '{dn}d {hnn}{sep}{mnn}{sep}{snn}'}); 
}); 

答えて

0

あなたがこれを行うとき:

$(document).ready(function mysqlTimeStampToDate(timestamp) { 
    // ... 
}); 

をあなたは後で使用するためにグローバルmysqlTimeStampToDate関数を定義していない、ドキュメントの準備ができたときに、あなたのmysqlTimeStampToDate機能を実行するためのjQueryを伝えています。そして、関数が実行され、$replaceメソッドがない場合、jQueryが関数を実行すると、executed with the jQuery object as its argumentとなるので、timestampは実際にはjQueryの$です。あなたのコンソールと

を実行し、このオープンし、あなたは私が何を意味するかわかります:http://jsfiddle.net/ambiguous/eUNS3/

私はあなたがちょうどこの言いたいと思う:

function mysqlTimeStampToDate(timestamp) { 
    //function parses mysql datetime string and returns javascript Date object 
    //input has to be in this format: 2007-06-05 15:26:02 
    var regex=/^([0-9]{2,4})-([0-1][0-9])-([0-3][0-9]) (?:([0-2][0-9]):([0-5][0-9]):([0-5][0-9]))?$/; 
    var parts=timestamp.replace(regex,"$1 $2 $3 $4 $5 $6").split(' '); 
    return new Date(parts[0],parts[1]-1,parts[2],parts[3],parts[4],parts[5]); 
} 

$(document).ready(function() { 
    $('textLayout').countdown({until: mysqlTimeStampToDate("#work_order_hard_completion_datetime"), layout: '{dn}d {hnn}{sep}{mnn}{sep}{snn}'}); 
}); 
+0

感謝万人を。今素晴らしいです。 – user1214966

関連する問題