Я вывожу вывожу страницу при помощи скрипта.При помощи JAVASCRIPT делаю всплывающую подсказку с дополнительным меню. Как присвоить в дополнительном меню ссылке токойже id как и в основной ссылке ?
<?php
$resylt = mysql_query ("SELECT id,title FROM frazeologizm",$db);
$myrow = mysql_fetch_array ($resylt);
include ("blocks/script.php");
do {
printf (" <table align='center' class='fraza1'>
<tr>
<td><p class='fraza1_name'><a href='view_fraza1.php?id=%s' onmouseover='doTooltip(event,msgTips)' onmouseout='hideTip()'>%s</a></p></td>
</tr>
</table><br>", $myrow["id"], $myrow["title"] );
}
while ($myrow = mysql_fetch_array ($resylt));
?>
sergeiss
23.03.2009 - 10:09
Для начала - сделай цикл не do{....}while(...); а while(...){ }. Иначе при отсутствии данных ты получишь предсказуемый, но совершенно неправильный результат.
А сам вопрос я не понял: основную ссылку вижу, а где id в дополнительном меню? Точнее, где это дополнительное меню??? Это doTooltip?
_____________
*
Хэлп по PHP*
Описалово по JavaScript *
Хэлп и СУБД для PostgreSQL*
Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги. *
"накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)
Да это doTooltip.
В JAVASCRIPT есть такая строка формирующая ссылку var msgTips ='<a href="view_fraza3.php?id=>фразеологизм</a> ';
Kuliev
23.03.2009 - 10:33
Дима
ПХП учил по курсам ПОПОВА?
Kuliev
23.03.2009 - 10:42
Цитата (Guest @ 23.03.2009 - 06:39) |
Да |
Забудь все уроки ПОПОВА и почитай какую нибудь толковую книжку!
А то млин на каждом форуме один и тот же код от ПОПВА!!!
sergeiss
23.03.2009 - 10:42
Если я правильно понял... То тебе надо добавить еще один параметр в doTooltip, под названием id
Который записать также, как ты его записываешь в основную ссылку. Тогда в коде страницы ты получишь определенное число.
Код |
... onmouseover='doTooltip(event,msgTips, %s)' ... |
Ну и, естественно, в самой функции надо будет принять число и вставить его в нужную ссылку.
_____________
*
Хэлп по PHP*
Описалово по JavaScript *
Хэлп и СУБД для PostgreSQL*
Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги. *
"накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)
Цитата |
Ну и, естественно, в самой функции надо будет принять число и вставить его в нужную ссылку. |
Спасибо
как сделать это здесь
<script type="text/javascript">
function doTooltip(e, msg) {
if ( typeof Tooltip == "undefined" || !Tooltip.ready ) return;
Tooltip.clearTimer();
var tip = document.getElementById? document.getElementById(Tooltip.tipID): null;
if ( tip && tip.onmouseout == null ) {
tip.onmouseout = Tooltip.tipOutCheck;
tip.onmouseover = Tooltip.clearTimer;
}
Tooltip.show(e, msg);
}
function hideTip() {
if ( typeof Tooltip == "undefined" || !Tooltip.ready ) return;
Tooltip.timerId = setTimeout("Tooltip.hide()", 300);
}
// tooltip content variables
var msgTips ='<a href="view_fraza3.php>фразеологизм</a> ';
</script>
По поводу Попова.
У меня нет достаточно времени чтобы досконально разобраться в PHP.
А результат нужен в ближайшее время.
sergeiss
23.03.2009 - 11:04
Это уже не ПХП, а Джава
Скрипт Смотри дальше. Есть у тебя строка (кстати, в твоей версии отсутствует закрывающая двойная кавычка).
HTML |
var msgTips ='<a href="view_fraza3.php">фразеологизм</a> '; |
Ее, эту переменную, нужно формировать в другом месте. Например, в функции doTooltip, непостредственно перед вызовом Tooltip.show.
Изменяем:
HTML |
function doTooltip(e, msg, id) { // всякая фигня, которая у тебя была: оставляешь всё, что было
msgTips='<a href="view_fraza3.php?id='+id+'">фразеологизм</a> ' Tooltip.show(e, msg); } |
Где-то так, наверное...
_____________
*
Хэлп по PHP*
Описалово по JavaScript *
Хэлп и СУБД для PostgreSQL*
Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги. *
"накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)
сделал так , только вместо msgTips= написал var msgTips=
function doTooltip(e, msg, id)
{
// всякая фигня, которая у тебя была: оставляешь всё, что было
msgTips='<a href="view_fraza3.php?id='+id+'>фразеологизм</a>" '
Tooltip.show(e, msg);
}
всплывающее окно выдёт со значением undefined
Я так понимаю ,что id не передалось
sergeiss
23.03.2009 - 11:38
Тут 2 возможных варианта:
1. Я сначала написал двойную кавычку не там, где нужно
Обрати на это внимание.
2. var внутри функции писать не нужно! Ты же не объявляешь переменную, а только присваиваешь ей значение.
Оставь объявление переменной в том месте, где она была объявлена ранее. А в функции только присвой ей значение.
_____________
*
Хэлп по PHP*
Описалово по JavaScript *
Хэлп и СУБД для PostgreSQL*
Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги. *
"накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)
Присвоил ей значение в функции
код получился таким
<script type="text/javascript">
function doTooltip(e, msg , id) {
if ( typeof Tooltip == "undefined" || !Tooltip.ready ) return;
Tooltip.clearTimer();
var tip = document.getElementById? document.getElementById(Tooltip.tipID): null;
if ( tip && tip.onmouseout == null ) {
tip.onmouseout = Tooltip.tipOutCheck;
tip.onmouseover = Tooltip.clearTimer;
}
msgTips='<a href="view_fraza3.php?id='+id+'">фразеологизм</a> ';
Tooltip.show(e, msg );
}
function hideTip() {
if ( typeof Tooltip == "undefined" || !Tooltip.ready ) return;
Tooltip.timerId = setTimeout("Tooltip.hide()", 300);
}
// tooltip content variables
var msgTips='<a href="view_fraza3.php?id='+id+'">фразеологизм</a> ';
</script>
Теперь выдаёт id в ссылке не правильно , сначало предедущее , а потом при повторном наведении верное
sergeiss
23.03.2009 - 12:57
Цитата (Guest @ 23.03.2009 - 11:26) |
Теперь выдаёт id в ссылке не правильно , сначало предедущее , а потом при повторном наведении верное |
Попробуй сделать это присвоение в самом начале функции doTooltip( ... ). Скорее всего, это поможет.
У тебя же идет какая-то подготовка объекта Tooltip, возможно, что как раз предыдущее значение строки так где-то используется. Поэтому и надо перенести в начало.
_____________
*
Хэлп по PHP*
Описалово по JavaScript *
Хэлп и СУБД для PostgreSQL*
Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги. *
"накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)
Попробовал перенести
<script type="text/javascript">
function doTooltip(e, msg , id) {
msgTips='<a href="view_fraza3.php?id='+id+'">фразеологизм</a> ';
if ( typeof Tooltip == "undefined" || !Tooltip.ready ) return;
Tooltip.clearTimer();
var tip = document.getElementById? document.getElementById(Tooltip.tipID): null;
if ( tip && tip.onmouseout == null ) {
tip.onmouseout = Tooltip.tipOutCheck;
tip.onmouseover = Tooltip.clearTimer;
}
Tooltip.show(e, msg );
}
function hideTip() {
if ( typeof Tooltip == "undefined" || !Tooltip.ready ) return;
Tooltip.timerId = setTimeout("Tooltip.hide()", 300);
}
// tooltip content variables
var msgTips='<a href="view_fraza3.php?id='+id+'">фразеологизм</a> ';
</script>
результат тотже
Проблема решена вместо:
Tooltip.show(e, msg );
напишисал
Tooltip.show(e, msgTips );
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.