jQuery + ASP.NET WebForms + MasterPage - PullRequest
       7

jQuery + ASP.NET WebForms + MasterPage

1 голос
/ 01 апреля 2011

Доброе утро, У меня проблема с использованием MasterPage и jQuery. Я использую jQuery UI с пользовательской темой, и я хотел бы установить дизайн всех кнопок для разработки кнопок jQuery UI. В MasterPage есть:

<script src="js/jquery-1.4.4.min.js" type="text/javascript"></script>
<script src="js/jquery-ui-1.8.10.custom.min.js" type="text/javascript"></script>
<script src="js/i18n/jquery-ui-i18n.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function() {

        // destroy all dialogs
        $('#dialog:ui-dialog').dialog('destroy');

        // set buttons
        $('input:submit, button').button();

    });
</script>

На странице aspx по умолчанию у меня есть одна кнопка asp: и она выглядит как кнопка пользовательского интерфейса jQuery. Но на другой странице aspx в каталоге у меня есть некоторые asp: TextBox и один asp: Button, и я получил ошибку: Microsoft JScript - ошибка в запущенной программе: свойство $ имеет нулевое значение или не определено. Свойство не является объектом функции. И кнопка не видна как кнопка jQuery UI. В чем дело? Спасибо и хорошего дня.

Ответы [ 4 ]

3 голосов
/ 01 апреля 2011

Редактировать: включить ваши сценарии, как это:

<script type="text/javascript" src="<%=ResolveUrl("~/js/jquery-1.4.4.min.js")%>" > </script>

Или использовать абсолютный путь

<script type="text/javascript" src="/js/jquery-1.4.4.min.js"></script>
0 голосов
/ 04 июня 2011

рабочий раствор:

HtmlGenericControl jQuery = new HtmlGenericControl("script");
jQuery.Attributes.Add("type", "text/javascript");
jQuery.Attributes.Add("src", this.ResolveClientUrl("~/js/jquery-1.5.1.min.js"));
Page.Header.Controls.Add(jQuery);

не очень чистый, но работает!

0 голосов
/ 02 апреля 2011

Мое сомнение - пустая голова на вашей странице aspx.

Удалить эту пустую структуру :

<asp:Content ID="cphHead" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
0 голосов
/ 01 апреля 2011

Наиболее вероятной причиной является то, что скрипт jQuery не загружен - возможно, из-за неправильного пути (как упомянуто dioslaska).

Я подумал, что упомяну пару хороших способов отладки этого ипосмотрите, правильно ли это.

Во-первых, используйте такой инструмент, как Fiddler (бесплатно) или превосходный HttpWatch (не бесплатно, к сожалению).Оба они позволяют вам видеть каждый запрос, поступающий в браузер.Если какой-либо из этих сценариев не удается загрузить, вы увидите ошибку (с кодом ошибки 404, если их не удается загрузить из-за невозможности их найти).

В качестве альтернативы просмотрите исходный файл вашей просчитанной сети.и найдите строку, соответствующую вашему тегу script для jquery-1.4.4.min.js.Вырежьте и вставьте URL-адрес источника в новое окно браузера (если это относительный путь, не забудьте добавить бит "http://myserver/"). Правильно ли загружается эта страница в браузере? Если нет - она ​​почтиКонечно, виновник.

Как только вы знаете, что не загружается, вы можете начать определять, что не так с путями, и вы можете исправить и проверить их.

Таким образом, вы можетеустранять ошибки такого рода, когда включенные файлы (будь то сценарии, CSS, изображения или что-либо еще) не загружаются.

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