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

sequencer

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

Ниже показаны куски кода index.php, где при нажатии ссылки с помощью вызова в функции launch(ID) метода submit() формы refform этот же файл перезапускается с новыми значениями. Установлены отладочные скрипты, показывающие текущие значения переменных.

PHP:
<?php
...
// ЗАПОМНИМ это место
print("<script>alert(\"$PageId,$PrevPageId\")</script>");
...
<a href=" " onclick="javascript:launch(7);">ссылка</a>
...
<form action="index.php" name="refform" method="post">
	<input type="hidden" name="PageId" id="PageId">
	<input type="hidden" name="PrevPageId" id="PrevPageId">
</form>
</body>
<script><!--
function launch(ID){
document.refform.PageId.value=ID
document.refform.PrevPageId.value=1
alert("Значения перед передачей: "+ID+", "+document.refform.PageId.value+", "+1+", "+document.refform.PrevPageId.value)

РЕЗУЛЬТАТ: "7,7,1,1". 7=7, 1=1, т.е. все правильно. Должны передаваться значения 7 и 1, они установлены в форме.

document.refform.submit() // открывается этот же файл с передачей методом POST.
}
//-->
</script></html>
Нажимаем ссылку, первое "alert" в начале файла выдает: "," т.е. пустые значения.
То же самое при указании метода GET, т.е. даже в строке с адресом не прописываются параметры.
Ну и на виде страницы сказывается отсутствие значений.

Какие могут быть объяснения?

В соседнем файле такой же код (по смыслу) исправно пашет.

До скрипта alert в начале файла никаких действий с переменными не производится. Консоль Javascript чиста. Чуть раньше была другая ссылка, прямая:
PHP:
<a href="http:// ..index.php?PageId=7">
и она работала. Но надо передавать методом POST.
Ввод в строке браузера "http:// ...index.php?PageId=7" также прекрасно работает.

-~{}~ 23.09.06 19:41:

Йоптыть.
Заменил на <u></u>, все ок. Тему закрывайте;)
Только сначала скажите, как бы теперь для полноты ощущений изменить вид курсора, по onmouseover?
 

SelenIT

IT-лунатик :)
Яваскриптом - this.style.cursor = "pointer" :)
Но лучше оставить ссылку, только в конец onclick-а дописать return false.
 

baev

‹°°¬•
Команда форума
Я б ссылку поменял на пустую.
(Один пробел — это не пустая...)
 

denver

?>Скриптер
<u> вместо ссылки это круто :)

sequencer
Подумай о тех счастливчиках которые отключили JS. Простую форму не смогут засабмитить?
 

sequencer

Новичок
Автор оригинала: denver
Подумай о тех счастливчиках которые отключили JS. Простую форму не смогут засабмитить?
Эти счастливчики половину сайтов смотреть не могут. Сегодня все же другой уровень уже :)
Впрочем, убедили вы меня кое в чем, добавлю noscript ;)

-~{}~ 24.09.06 16:56:

Автор оригинала: SelenIT
Яваскриптом - this.style.cursor = "pointer" :)
Стало быть есть списко стилей курсора? Где с ним ознакомиться?

-~{}~ 24.09.06 16:58:

Автор оригинала: baev
Я б ссылку поменял на пустую.
(Один пробел — это не пустая...)
Делал пустую. Я же не просто так пробел вставил. Когда было "", в строке состояния было написано: http://www.site.ru/"http://www.site.ru/", нажатие же приводило к переходу прямо по указанному адресу, причем обработчик onclick не срабатывал, т.к. я там вставил alert а никакого alert'а не было.
 
Сверху