JQuery в ASP.Net пользовательский контроль в C # - PullRequest
0 голосов
/ 16 сентября 2009

У меня проблемы с использованием JQuery внутри пользовательского элемента управления ASP.Net. Я создал образец, и вот разметка для моего пользовательского элемента управления:

<%@ Control Language="C#" ClassName="UC" AutoEventWireup="true" 
    CodeFile="UC.ascx.cs" Inherits="UserControls_UC" %>

<span id="Licenses"></span>

<script type="text/javascript">
    $(document).ready(function() {
        var ctlID = $("span[id$='Licenses']");
        ctlID.text = "Testing";
    });
</script>

Если я включу этот тег сценария <script type="text/javascript" src="js/jquery-1.3.2.js" /> в файл aspx, содержащий пользовательский элемент управления для ссылки на JQuery, ничего не произойдет. Если я не включаю его, я получаю диалоговое окно с ошибкой JavaScript, в котором говорится, что произошла ошибка во время выполнения и что ожидался объект. Есть идеи, что я могу делать не так?

Ответы [ 4 ]

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

текст - это функция в jQuery. Попробуйте:

 ctlID.text("Testing");
0 голосов
/ 02 декабря 2009

Я думаю, вы должны использовать что-то вроде этого:

var ctlID = $("span[id$='Licenses']").get(0);
ctlID.text = "Testing";
0 голосов
/ 16 сентября 2009

Префикс «$» к идентификатору получает все элементы, заканчивающиеся на «Licenses».

Сделайте быстрое изменение, чтобы проверить, что '#' даст вам ровно один элемент.

  $(document).ready(function() {
        var ctlID = $("#Licenses");
        ctlID.text = "Testing";
    });

Чтобы заставить его работать с селектором атрибутов, попробуйте

$('span[@id=Licenses]')   // You can omit the @ in the latest version of jquery.
0 голосов
/ 16 сентября 2009

Правильно ли вы включили библиотеку jquery на главной странице?

Разве это не значит быть долларом перед идентификатором, т.е. $id='Licenses'? или даже #

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