Ошибка при вызове jquery на главной странице - PullRequest
1 голос
/ 16 сентября 2009

У меня есть календарь. когда я вызываю это на простой странице aspx, тогда она работает нормально, но когда я звоню на странице, к которой прикреплена главная страница, она не работает.

Вот код, который я использую:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default11.aspx.cs"
         Inherits="Default11" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
                      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head runat="server">
    <link href="ui.all.css" rel="stylesheet" type="text/css" />
    <link href="demos.css" rel="stylesheet" type="text/css" />
    <script src="jquery-1.3.2.js" type="text/javascript"></script>
    <script src="ui.datepicker.js" type="text/javascript"></script>
    <script src="ui.core.js" type="text/javascript"></script>
    <title>Untitled Page</title>
  </head>

  <script type="text/javascript">
$(function() {
    $("#txt").datepicker();
});
  </script>
  <body>
    <form id="form1" runat="server">
      <div>
        <asp:TextBox ID="txt" runat="server"></asp:TextBox>
      </div>
    </form>
  </body>
</html>

Это нормально работает.

Но когда я звоню вот так, календарь не отображается

<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" 
         AutoEventWireup="true" CodeFile="CAL.aspx.cs" 
         Inherits="admin_CAL" Title="Untitled Page" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="CPHMain" Runat="Server">
  <link href="ui.all.css" rel="stylesheet" type="text/css" />
  <link href="demos.css" rel="stylesheet" type="text/css" />
  <script src="jquery-1.3.2.js" type="text/javascript"></script>
  <script src="ui.datepicker.js" type="text/javascript"></script>
  <script src="ui.core.js" type="text/javascript"></script>
  <script type="text/javascript">
    $(function() {
    $("#TextBox1").datepicker();
        });
  </script>
  <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</asp:Content>   

Ответы [ 2 ]

4 голосов
/ 16 сентября 2009

ASP.net меняет идентификатор вашего элемента управления - вы это ясно видите, проверив источник созданной вами страницы. Попробуйте:

$("[id$='TextBox1']").datepicker();

Эта проверка для элемента, идентификатор которого заканчивается на "TextBox1".

Альтернативно, вы можете решить это на стороне сервера:

$('#<%= TextBox1.ClientID %>').datepicker();
0 голосов
/ 16 сентября 2009

Есть ли элемент с идентификатором TextBox1? Если вы открываете страницу в Firefox и используете консоль Firebug, какую ошибку она выдает?

Вам нужно быть немного более информативным, чтобы мы могли вам помочь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...