не работает onsubmit = ("return false;")
Код:
<script type="text/javascript" >document.forms[0].onsubmit = ("return false;")</script>в чем проблема? -------- Код:
form method="post" action="setting.php" onsubmit="return false"> |
Как вариант...
<script type="text/javascript" >
document.forms[0].onsubmit = function(){return false;};
</script>
|
Цитата:
|
тогда у меня не работает такая конструкция почему?
function formaddfunction() {
var oforms = document.forms;
var fmethod;
for (i = 0; i < oforms.length; i++) {
fmethod = oforms[i].method;
oforms[i].onsubmit = function() { sendquery(this, fmethod); return false; };
}
}
есле без sendquery(this, fmethod); то работает, а с ней работает только первая последняя форма, а верхние формы нет, и когда грузится штмл он автоматически запросы с верхних форм шлет пустые ячейки
function formaddfunction() {
var oforms = document.forms;
var fmethod;
for (i = 0; i < oforms.length; i++) {
fmethod = oforms[i].method;
oforms[i].onsubmit = ('sendquery(this, '"+fmethod+"'); return false;');
}
}
а так робит все четко но только в опере)) ---------- что подскажете? |
Цитата:
<!DOCTYPE html>
<html>
<head>
<!--
<script src="http://code.jquery.com/jquery-latest.js"></script>
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
function Go() {
alert(1);
};
</script>
</head>
<body>
<form action='http://javascript.ru'>
<input type='submit' value='Test' />
</form>
<script type="text/javascript">
document.forms[0].onsubmit=function(){
Go();
return false;
};
</script>
</body>
</html>
|
так правильно, у вас там на одну форму работает, у меня тоже когда одной форме присваеваешь, вы же на цикл посмотрите она перебирает все формы которые только есть, есле 20 форм то он каждой форме присваивает онсубмит
|
Вот, не 20 форм конечно... Но все равно ничего не отправляется...
<!DOCTYPE html>
<html>
<head>
<!--
<script src="http://code.jquery.com/jquery-latest.js"></script>
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
function Go() {
alert('Все равно форма не отправится...');
};
</script>
</head>
<body>
<form action='http://javascript.ru'>
<input type='submit' value='Test' />
</form>
<form action='http://javascript.ru'>
<input type='submit' value='Test' />
</form>
<form action='http://javascript.ru'>
<input type='submit' value='Test' />
</form>
<form action='http://javascript.ru'>
<input type='submit' value='Test' />
</form>
<script type="text/javascript">
var i=0;
while (document.forms[i]) {
document.forms[i].onsubmit=function(){
Go();
return false;
};
i++;
};
</script>
</body>
</html>
|
нашел свой бок)) ваше схема полностью работает, огромное спасибо то у меня бока с ПОСТ и ГЕТ по циклу
тему закройте |
function formpg() {
var oforms = document.forms;
var fmethod;
for (i = 0; i < oforms.length; i++) {
fmethod = oforms[i].method;
oforms[i].onsubmit = function() { sendquery(this, fmethod); return false; };
}
}
есть такая конструкция, суть ее такова, что она считывает все формы, и всем формам задает sendquery(this, fmethod); return false; ------ fmethod - это метод передачи формы тоесть ПОСТ или ГЕТ все отлично робит, но один момент не работает,sendquery(this, fmethod) - он всегда подставляет метод последней формы, тоесть есле идет 2 формы первая к примеру пост а вторая гет, то во все формы он поставит гет - sendquery(this, fmethod=ГЕТ) sendquery(this, 'get') как мне написать что бы скрипт работал как надо, есле пост то пост, есле гет то гет???? не пойму в чем проблема вроде правильно завернул фукнцию |
function formpg() {
var oforms = document.forms;
for (i = 0; i < oforms.length; i++) {
(function(i){
var fmethod = oforms[i].method;
oforms[i].onsubmit = function() { sendquery(this, fmethod); return false; };
})(i);
}
}
Если я верно понял вопрос, то тебе нужно попробовать как написано выше. Если это то, что нужно, то почитай про "замыкания".UPD Господа профессионалы, теперь вопрос от меня: мы же можем и не посылать 'i' в замыкающею функцию, верно? или это, все таки, обязательно? Вопрос касается данного случая. |
| Часовой пояс GMT +3, время: 00:42. |