#php #javascript #jquery #html
#php #javascript #jquery #HTML
Вопрос:
Я пытаюсь расширить некоторый код, написанный кем-то другим, но у меня возникают проблемы с использованием одной из переменных javascript. Если я установлю ее в заголовке div или что-то подобное, например, так:
$("#test12").attr("title" , ccode);
тогда это работает нормально, и заголовок div — ‘CA’, каким он и должен быть. Но если я попытаюсь поместить ее в текстовую область div, то она попытается запустить функцию или что-то в этом роде, но я не вижу, где она это делает.
Есть ли способ преобразовать ее в простой текст и остановить запуск любых функций?
Спасибо за любую помощь
Редактировать:
Это весь код, который я могу видеть на данный момент:
<script>
//<!--
function loadForeignOffices(ccode){
//load window with details...
$('#iframe_3').attr("src", "<?php echo $html->url("/", true); ?>erc/maps/contacts/" ccode);
$("#test12").attr("title" , ccode);
}
//-->
</script>
В основном то, что я пытаюсь сделать, это использовать переменную ccode, потому что я хочу отобразить CA на экране, но когда я пытаюсь это сделать, кажется, что запускается какая-то другая функция, и происходит сбой, и CA не отображается.
Комментарии:
1. Можете ли вы опубликовать немного больше кода, сложно понять, о чем вы спрашиваете
2. 1 для @Chris. Давайте посмотрим еще немного кода.
3. Как сказал Крис, никто не сможет вам помочь, пока мы не увидим этот другой фрагмент кода..
4. Просто сделайте:
$("#textarea").html(ccode);
. В чем здесь проблема? Нам нужно больше информации.5. Обратите внимание, что опубликованный вами код является кодом на стороне сервера (в нем есть оператор php echo), как выглядит его исходный код на стороне клиента (после обработки php?) Также: есть какие-либо ошибки в консоли ошибок?
Ответ №1:
Возможно, вам потребуется освежить ваши точечные операторы jQuery:
.load()
это вызов ajax, который загрузит содержимое ()
в выбранный элемент. В одном из своих комментариев вы упоминаете, что пытаетесь это сделать $("#test12").load(ccode);
, что по сути глупо, если ccode — это строка «CA»
.attr()
изменит атрибуты выбранного элемента. Если вы пытаетесь отобразить «CA», $("#test12").attr("title" , ccode);
этого явно не произойдет, поскольку «CA» добавляется к атрибуту title. Как в <div id="test12" title="CA"></div>
Возможно, вы ищете то, .html()
что вставляет строку в выбранный элемент. Или даже .innerText()
Почему бы вам не потратить некоторое время на чтение документации jQuery. Немного имеет большое значение!
Комментарии:
1. Да, это то, что мне нужно прочитать, .html был тем, что я хотел сделать … спасибо! Я думал, что .load () сделал почти то же самое, но, очевидно, я ошибался
Ответ №2:
Имейте в виду, что сначала на сервере выполняется ваш PHP-код, затем ваш javascript.
Вот JS Fiddle для начала: http://jsfiddle.net/QsFJ4/3 /
Комментарии:
1. Привет, pixelbobby, мне трудно объяснить, что я имею в виду. Если я использую этот код: $ («#test12»).load(ccode); вместо attr («title …»), то он не отображает тот же результат
2. @Daniel, я не уверен, что кто-нибудь это поймет. Чего, в конце концов, вы пытаетесь достичь? Почему мы сравниваем
src
атрибут сtitle
атрибутом?