14

jquery サイトの基本的な onSelect 仕様に従って、次のコードを試しました。

<!DOCTYPE html>
<html>
<head>
  <link type="text/css" href="http://jqueryui.com/latest/themes/base/ui.all.css" rel="stylesheet" />
  <script type="text/javascript" src="http://jqueryui.com/latest/jquery-1.3.2.js"></script>
  <script type="text/javascript" src="http://jqueryui.com/latest/ui/ui.core.js"></script>
  <script type="text/javascript" src="http://jqueryui.com/latest/ui/ui.datepicker.js"></script>
  <script type="text/javascript">
  $(document).ready(function(){
    $("#datepicker").datepicker();


$('#datepicker').datepicker({
   onSelect: function(dateText, inst) { alert("Working"); }
});



  });

  </script>
</head>
<body style="font-size:62.5%;">

<div type="text" id="datepicker"></div>

</body>
</html>

そして、それを機能させることはできません!もともとはもっと複雑なことをしようとしていましたが、onSelect がうまくいかなかったので、基本に戻ってもうまくいきません。

4

4 に答える 4

44

API を正しく使用していません。悪く思わないでください。最初は混乱します。

これらの行はどちらも、要素の日付ピッカーを初期化するように日付ピッカー ウィジェットに指示しています。

$("#datepicker").datepicker();
$('#datepicker').datepicker({
   onSelect: function(dateText, inst) { alert("Working"); }
});

最初のものは、2 番目のものの効果を妨げる以外には何もしていないため、削除できます。

ウィジェットを既に初期化した後でオプションのいずれかの値を変更する場合は、次の API を使用する必要があります。

$('#datepicker').datepicker('option', 'onSelect', function() { /* do stuff */ });

bindまたは、jQuery の関数を使用してハンドラーをアタッチすることもできます。

$('#datepicker').bind('onSelect', function() { /* do stuff */ });
于 2009-08-13T20:33:26.683 に答える
13

$("#datepicker").datepicker()その行のすぐ上の 2 番目を削除してみてください。

$(document).ready(function(){
    $('#datepicker').datepicker({ onSelect: function(dateText, inst) { alert("Working"); } });
});
于 2009-08-13T20:25:16.593 に答える