Функция нажатия Jquery не работает в приведенном ниже коде ..? - PullRequest
0 голосов
/ 12 июля 2010
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <link type="text/css" href="App_Themes/jquery-ui-1.7.3.custom.css" rel="stylesheet" />
        <script src="Scripts/jquery-1.3.2.min.js"type="text/javascript"></script>
        <script src="Scripts/jquery-ui-1.7.3.custom.min.js" type="text/javascript"></script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>

    <script type="text/javascript" >
       $("#myButton").click(function() {
          $("#datepicker").datepicker("show");
       });
    </script>
    <form id="form1" runat="server">
    <div>
    <table border="1px" >
     <tr>
        <td><asp:Label ID="Label4" runat="server" Text="Text"></asp:Label></td>
        <td><asp:TextBox ID="TextBox2" runat="server" ></asp:TextBox></td>
    </tr>

    <tr>
        <td><asp:Label ID="Label1" runat="server" Text="Date"></asp:Label></td>
        <td><asp:TextBox ID="datepicker" runat="server"></asp:TextBox>
            <input id="myButton" type="button" value="button" />
        </td>
    </tr></table> 
    </div>
    </form>
</body>
</html>

это мой код дизайна веб-формы ..

функция щелчка, написанная в боковом скрипте, не работает ... !! Что-то не так .??

Ответы [ 5 ]

3 голосов
/ 12 июля 2010

.datepicker( "show" ) - >> Call up a previously attached date picker., но я не вижу, где вы инициализируете свой сборщик дат .. сначала назовите его так ... $("#datepicker").datepicker();

$(function() {
    $("#datepicker").datepicker();

    $("#myButton").click(function() {
       $("#datepicker").datepicker("show");
    });
});

попробуйте раскомментировать эту строку ($("#datepicker").datepicker();) в демоверсии

демо

2 голосов
/ 12 июля 2010

Добавьте ваш скрипт в функцию document.ready(...).

Одна из причин, по которой он не работает, состоит в том, что когда ваш скрипт выполняется, элемент myButton еще не был добавлен в DOM, и поэтомуне найдено.При использовании jquery вы должны обычно заключать код javascript в $(document).ready(..), чтобы убедиться, что DOM полностью загружен при вызове вашего кода.Попробуйте следующее:

<script type="text/javascript" >
  $(document).ready(function(){
      $("#myButton").click(function() {
          $("#datepicker").datepicker("show");
      });
  });
</script>
1 голос
/ 12 июля 2010

из документации:

show

Подпись: .datepicker ("show")

Вызов ранее прикрепленного средства выбора даты.

так что в первую очередь нужно прикрепить его !!Например:

$(document).ready(function() {
    var textBox = $('#<%= this.datepicker.ClientID %>');
    var icon = $('#myButton');
    var datepicker = textBox.datepicker();
    icon.click(function() {
        datepicker.datepicker('show');
    });
});

ваш, вы можете пойти с значок-триггер

0 голосов
/ 12 июля 2010

Вам нужно будет использовать идентификатор клиента элементов управления, например,

$ ( "# <% = datepicker.ClientId%>") DatePicker ( "шоу");.

0 голосов
/ 12 июля 2010

Посмотрите на исходный код, который был сгенерирован. Идентификатор все еще называется myButton и datepicker? Часто идентификаторы переписываются asp.net, если не указано иное, и вы используете версию 4.

...