Показывать текущую дату при помощи jquery datepicker - PullRequest
2 голосов
/ 10 июня 2011

Я использую интерфейс datepicker для jQuery.Календарь загружается нормально.Теперь я хочу запустить событие, показывающее текущую дату, когда я выбираю день.Я пытаюсь использовать это , но безуспешно.

Функция выглядит следующим образом:

$(document).ready(AllPageLoads);

    function AllPageLoads()
    {
        $('#datepicker').datepicker();
        $('table.games tbody tr.top').each(function (index) { if (index % 2 == 0) { $(this).addClass("even"); } else { $(this).addClass("odd"); } });
        $('table.games tbody tr.bottom').each(function (index) { if (index % 2 == 0) { $(this).addClass("even"); } else { $(this).addClass("odd"); } });
    }

    function EpicFail(response, status, error)
    {
        alert(response + " / " + status + " / " + error);

}
$('.selector').datepicker("option", "onSelect", function (dateText, inst) {
  alert(dateText);
 });

html:

<h2>Current Data</h2>

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

<p>All Times Pacific/p>
<table id="games" class="games">
    <thead> 
        <tr>
            <th>Date</th>
            <th>Data</th>
            <th>Col1</th>
            <th>Col2</th>
            <th>Data1</th>
            <th>Data2</th>
            <th>Data3</th>
        </tr>
     </thead>
  <tbody>

  <tr class="left">

        <td>6/9/2011</td>

        <td>901</td>

        <td>Team1</td>

        <td>Payer1</td>

        <td>info1</td>

        <td>OFF</td>

        <td>OFF</td>

    </tr>

    <tr class="right">

        <td>4:05 PM</td>

        <td>902</td>

        <td>Team2</td>

        <td>Palyer2</td>

        <td>info2</td>

        <td>OFF</td>

        <td>OFF</td>

    </tr>
   </tbody>
</table>

Ответы [ 2 ]

2 голосов
/ 10 июня 2011

Это не работает, потому что вы инициализировали datepicker хотя бы один раз перед тем, что вы пытаетесь сделать сейчас.Используемая привязка (внутри параметров в качестве словаря) работает только при первоначальной инициализации.

Либо переместите ее в 1-й оператор инициализации, либо используйте:

$('.selector').datepicker("option", "onSelect", function (dateText, inst) {
                                                    alert(dateText);
                                                });
1 голос
/ 10 июня 2011

Когда вы используете $('.selector')., вы говорите jQuery: найдите элемент с class="selector" и выполните эту функцию.

Но у вас нет элемента с этим именем класса.

Итак, чтобы решить проблему, просто добавьте код:

    function AllPageLoads()
    {
        $('#datepicker').datepicker({
           onSelect: function (dateText, inst) { alert(dateText); }
        });
        $('table.games tbody tr.top').each(function (index) { if (index % 2 == 0) { $(this).addClass("even"); } else { $(this).addClass("odd"); } });
        $('table.games tbody tr.bottom').each(function (index) { if (index % 2 == 0) { $(this).addClass("even"); } else { $(this).addClass("odd"); } });
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...