2014-10-24 2 views
1

Проблема: Я загружаю модальную форму из вызова ajax. В рамках модальности у меня есть элемент span, содержащий адрес электронной почты. Мне нужно захватить значение элемента span в javascript. В настоящее время у меня есть кнопка, которая вызывает функцию для получения текста.jQuery Uncaught TypeError: Не удается прочитать текст свойства «null»

код для чтения текста: function AccountHistoryRedeemSendEmail(emailType) { clearNotifications(); console.log('Hit AccountHistoryRedeemSendEmail'); var url = "../../utility/account/ajaxAccountHistoryRedeemSendEmail.aspx"; var params = "eType" + emailType; //console.log($('#lblHRedeemEmailAddress')); console.log('Output text: ' + $('#lblHRedeemEmailAddress').text()); params += "&HRedeemEmailAddress=" + $("#lblHRedeemEmailAddress").text(); params += "&timestamp=" + new Date(); // new Ajax.Request( // url, // { // method: "get", // parameters: params, // onSuccess: parseAjaxResponseAccountHistoryRedeemSendEmail // } // ); }

Ошибка возвращается в: «Uncaught TypeError: Не удается прочитать свойство„текст“в нуль»

Я понимаю, ошибка говорит мне $('#lblHRedeemEmailAddress') возвращается нуль , Естественно, я подтвердил правильность своего имени элемента. Я также проверил элемент в хроме и подтвердил, что он присутствует в документе. Вот HTML в документе:

<span id="lblHRedeemEmailAddress">[email protected]</span> 

< img src="sendemail.jpg" id="SendEmail" alt="Email Certificate" onclick="AccountHistoryRedeemSendEmail('lblEmail');">

Итак, вопрос: Почему мой lblHRedeemEmailAddress элемент нуль, когда я пытаюсь получить доступ к нему из функции? И как мне это исправить?

+1

выглядит как '$' не относится к JQuery попробовать 'JQuery ('# lblHRedeemEmailAddress') текста()' вместо –

+0

Арун, в этом была проблема. Спасибо! – FreakinWard

ответ

3

Если lblHRedeemEmailAddress не существует, jQuery вернет пустой набор результатов, по которому вы все равно сможете позвонить text. $, вероятно, относится к некоторой другой библиотеке, такой как prototype.

Читайте на noConflict или создать замыкание где $ установлен в jQuery:.

(function($) { 
    // for anything in here, $ will be jQuery 
})(jQuery); 
+0

Звездная работа! Спасибо! – FreakinWard

Смежные вопросы