2

入力要素をクリックするとカレンダーがポップアップするカレンダースクリプトをダウンロードしました。

<script language="JavaScript">
  $(function() {
        $( ".datepicker" ).datepicker();                
  });   
</script>

<input class='datepicker' />

上記のコードは正常に動作します。

しかし、要素がJavaScriptからのものである場合...

<script language="JavaScript">
function showElement()
{
    $('#mydiv').html("<input class='datepicker' />");

}
</script>

<div id='mydiv'></div>

入力をクリックしてもカレンダーが表示されません。ダウンロードしたスクリプトにエラーはないと思います。要素がjavascriptによって作成された場合でも、このカレンダーが表示されるようにするには、何かをする必要があると思います。何を変更すればよいですか?ありがとう!

4

1 に答える 1

1

関数を次のように変更します。

function showElement()
{
    $('#mydiv').html("<input class='datepicker' />");
    $( ".datepicker" ).datepicker();

}

または、さらに良いことに、次のようにします。

function showDatePicker(selector) {
    $(selector).datepicker();
}

function showElement()
{
    $('#mydiv').html("<input class='datepicker' />");
    showDatePicker(".datepicker");
}

showDatePicker()このようにして、関数にパラメーターとして渡すセレクターに一致する任意の要素に対して関数を呼び出すことで、必要なときにいつでも日付ピッカーを表示できます。showElement()もちろん、あなたの場合、関数を呼び出した後にのみ呼び出したいでしょう

于 2013-06-15T06:58:43.187 に答える