0

入力フィールドを日付ピッカーに変換する日付ピッカー関数があります。次のように実行されます。

function activateDatePicker(id){
    $(function() {
            $(id).datepicker({
                defaultDate: "+1w",
                dateFormat: "yy-mm-dd",
                changeMonth: true,
                changeYear: true,
                numberOfMonths: 3,
            });
    });
}

別の関数は、必要な入力タグを作成し、activateDatePicker 関数を呼び出して、jquery 日付ピッカーに変換します。たとえば、

function createInputTag(input){
    document.getElementById("sometag").innerHTML = 
                                  "<input id="+input+" />";
    activateDatePicker(input);
}

その入力は何でもかまいません。createInputTag を使用して、それぞれ異なる ID を持つ複数の日付ピッカーを作成します。現時点では何もしませんが、コンソールにはエラーは表示されません。誰かが理由を知っていますか?それを修正するために何ができますか?JavaScriptで解決したいのですが、jqueryも良いです。

4

2 に答える 2

1

@bipenの応答に加えて、おそらく$(function(){...});を使用しないでください。関数内:

function activateDatePicker(id)
{
        $(id).datepicker({
            defaultDate: "+1w",
            dateFormat: "yy-mm-dd",
            changeMonth: true,
            changeYear: true,
            numberOfMonths: 3,
        });   
}
于 2012-12-03T12:14:44.867 に答える
1

あなたのセレクターは間違っています

 $(id).datepicker({

する必要があります

  $('#'+id).datepicker({

入力も..

 "<input id="+input+" />";

HTML では、<input>タグに終了タグはありません。

関数内で準備完了関数を使用する必要はないと思います...

于 2012-12-03T12:02:49.850 に答える