вот код: Код (Text): <head> <script language="javascript" type="javascript"> function search_q() { alert('Hello, world!'); } </script> </head> <body> <a href="javascript:search_q();">search</a> </body> но когда я нажимаю на ссылку мне выдается сообщение Object expended. Что тут не так?
<a href='./' onclick='search_q(); return false;'>search</a> хотя вроде и начальный вариант должен работать..
DarkElf, а я стер мессагу еще полгода назад ))) Да, сначало не заметил return false, но все равно так не правильно, лучше тогда писать # вместо ./
vb, а нужен ли переход? Как вариант: <a href='...' onclick='return search_q();'>search</a> В search_q() проверять условие (напр., заполнено ли поле поиска) и в зависимости от этого из функции return true/false;
DarkElf, но ты ведь сам его делаешь, при этом, в твоем варианте, если JS отключен пользователь уйдет .. куда-то на ./
Это я про то что между твоими двумя сообщениями я добавил сообщение что в href писать ./ - это не есть хорошо, а потом забил и тут же удалил ее.... а спустя.. минут 10 ты добавил свой ответ на удаленное сообщение
Тоже плохое решение. Как сейчас помню два дня за которые надо было переделать средненький магазин галандского производства, суть переделки сводилась к избавлению от фреймов. Сделал тупо .htaccess перенаправляет все запросы на index.php тот в свою очередь смотрит что за запрос и если запрос страницы, то подцепляет дизайн и берет контент соответствующей страницы. Сложность в том что контентом страниц были другие пхп-файлы, в которых активно использовалось PHP_SELF, в результате, так как вызов был из /index.php файла /shop/result.php SELF_PHP получался не правильный, то есть вместо /shop/result.php мы имели /index.php И такое будет всегда и везде где активно используется мод реврайт Если ты хочешь подставлять текущий урл используй REQUEST_URI а не PHP_SELF
а обязательно ли ссылка должна быть??? Я делаю так: Код (Text): <span style="cursor: pointer;" onclick="search_q();">Типа ссылка</span>
?? а я не понял вашей иронии :? Я имел ввиду, что непонятно, нужен ли переход по ссылке. Может pr0n1x просто упрощенный пример привел, а вообще будет делать... да хоть ту же проверку с последующим переходом. ? P.$. Еще можно из ссылки и без href'a Код (Text): <a style="cursor:pointer" onclick='search_q();'>search</a>
pel, а еще можно document.onclick = search_q(); - вообще без тегов . ирония в том что переход не необходим, но и прописывать его как делает это DarkElf тоже не необходимо, поэтому вопрос "а нужен ли переход" был воспринят тоже как вид иронии . Кроме того у вас href совсем чем то не тем забит На какой тэг вешать onclick особого значения нет (http://www.w3schools.com/jsref/jsref_onclick.asp), но раньше, вроде как по правильному считаелось, что если вешаете на <a>, то в href следует прописывать javascript:void(0); Сейчас можно покурить тут и закрыть тему: http://www.artlebedev.ru/tools/technogrette/html/links/
vb на самом деле я там заполнял href только с одной целью - чтобы в строке статуса был виден какой-то путь.. а-ля пункт 2 вышеуказанной ссылки на АЛ
Вообще есть 2 стандартных метода и без всяких там извращений в виде стилей и.т.д. Код (Text): <a href="javascript:call_function("param"); return false;">text</a> и Код (Text): <a href="#" onclick="call_function("param"); return false;">text</a> Второй ИМХО лучше, т.к. в строке статуса не видно, что мы вызываем. И надо не забывать ставить return false в обязательном порядке, иначе браузер захочет перейти по ссылке на что, что указано в href
я не понимаю кто первым придумал делать этот бред - href='#' ? зачем? href='' вполне достаточно чтобы сослаться странице на саму себя. p.s. по существу - я тоже за то чтобы при наличии onclick, указывать в href если не '', то ту страницу куда нужно отправить юзера при js=off и никаких href='javascript:...'
А на него кто-то ещё орентируеться реально? Лично я нет, потому что тот функционал, который требуеться сегодня, он не способен обеспечить по причине отстойности своего JavaScript'a (как и опера до 9-й версии)