метод onClick в Submit

_Leonchik_

Новичок
метод onClick в Submit

Привет. Всех с наступающими праздниками.
Наведите на правильные мысли.

пхп+смарти.

есть буттон, по нажатию он спрашивает, но....

<input type="submit" name="delete" value="Удалить" onClick="javascript: Confirms()" >

есть функция явыскрипта Confirms(), кот. спрашивает пользователя при нажатии на кнопку.

function Confirms(){
var LOG = confirm('ВЫ хотите удалить? ');
if(LOG == "true" ) return 1;
else return 0;
}

как запретить выполнения onClick, если false по возврату от функции?
 

_Leonchik_

Новичок
все равно удаляет, т.к. метод onClick - срабатывает

-~{}~ 30.12.05 19:16:

так заработало

function Confirms(){
LOG = confirm('ВЫ хотите удалить ИГРОКА?');
if(LOG) return true;
else return false;
}

onClick="return confirm('ВЫ хотите удалить?')"
 

Сергей123

Новичок
если жать cancel, то ничего не срабатывает

<html lang="ru" dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<title>test</title>
</head>
<body>

<form method="get" action="1.htm">

<input type="submit" name="delete" value="Удалить" onClick="return confirm('ВЫ хотите удалить?')">

</form>

</body>
</html>

-~{}~ 30.12.05 18:21:

>> так заработало
Вот и отлично. А Confirms - лесом.
 

Dreammaker

***=Ф=***
в первоначальном варианте тоже нужно return добавлять.

onClick="javascript: return Confirms()"
 

kruglov

Новичок
off: onclick правильно писать маленькими буквами, в отличие от colSpanов и пр.
 

SelenIT

IT-лунатик :)
off 2: в onclick никаких "javаscript:" писать не нужно.

p.s. причем тут PHP?
 

Сергей123

Новичок

off: onclick правильно писать маленькими буквами, в отличие от colSpanов и пр.
Подскажи мне почему, пожалуйста (и по первому, и по второму утверждениям).

off 2: в onclick никаких "javаscript:" писать не нужно
Подскажи мне почему, пожалуйста.
 

serglt

Анус, ой, Ахтунг
Вообще можно сделать вот так будет надежнее

<form action="index.php" method="post" onSubmit="return confirm ('Удалить?');">
<input name="qwe">
<input name="asd">
<input type="submit" name="ok" value="Del">
</form>
 

Dreammaker

***=Ф=***
kruglov, при банальной проверке работают два варианта (и строчные, и прописные). Хотя может относительно старых броузеров описанное в статье и справедливо...
 

SelenIT

IT-лунатик :)
Бресь Сергей
Насколько я понимаю (т.е. не претендуя на неоспоримость):
Аргумент 1. Запись "javаscript:" - это "как бы протокол", т.е. часть "как бы URL", что имеет смысл только при использовании в качестве адреса ссылки.
Аргумент 2. Обработчик события есть функция, т.е. <a id="link1" href="#" onclick="alert('Hi!');return false;">link</a> эквивалентно чему-то вроде
Код:
<a id="link1" href="#">link</a>
<script>
document.getElementById("link1").onclick = function() {
   alert('Hi!');
   return false;
}
</script>
где, по-моему, запись "javаscript:" в теле ф-ции неуместна. Хотя (что меня немало удивило) наличие ее там не воспринимается браузерами (IE6, FF1.5) как ошибка. Но зачем лишний мусор?

Dreammaker
Регистр имеет значение не в HTML, а в самом Javascript (как в моем примере чуть выше) и старые/новые браузеры тут ни при чем. Поэтому желательно приучаться писать так, как будет работать во всех ситуациях, чтобы предохранить себя от ошибок.
 

Сергей123

Новичок
kruglov, спасибо.
SelenIT, мне просто помнится, что "Documents that do not specify default scripting language information and that contain elements that specify an intrinsic event script are incorrect." Хотя, я сейчас попытался с помощью, например, <meta http-equiv="Content-Script-Type" content="text/vbscript"> чего-то добиться, но не вышло. Я, собственно, слабо в этом разбираюсь, почему и хотелось уточнений.
 
Сверху