javascript submit function
Sziasztok
Számomra megoldhatatlan az eset, de lehet hogy ti tudtok rá megoldást. A helyzet a következô: egy kódolt php szoftverbe kell belenyúlnom. A kódolt programba természetesen nem de a templatek módosíthatóak. Itt találkoztam a következô helyzettel.
Szükségem lenne arra, hogy egy form-ot a submit elôtt leellenôrizzek. Ezt alapban a rendszer nem a beküldés elôtt, hanem utána végzi el és visszatér a hibaüzenettel ha van, tehát a form alján egy egyszerû input tag van type='submit'-tal. Mivel én a kódolt részbe nem tudok beleírni, marad az a megoldás hogy beküldés elôtt ellenôrzöm a formot, ezért az input-ot le kellene cserélnem egy javascriptes függvényre, ami ellenôriz és ha minden rendben csak akkor submitállja a formot.
Igen ám de a formon belül van egy hidden input aminek a neve submit...
És hiába csinálom meg a javascriptes függvényt, a várt 'Error: document.no1.submit is not a function' javascript hiba jön vissza. Átnevezni nem tudom a hidden inputot, mivel a kódolt részben ezt várja a program...
Van esetleg erre valami megoldás, vagy nincs?
Köszönöm
■ Számomra megoldhatatlan az eset, de lehet hogy ti tudtok rá megoldást. A helyzet a következô: egy kódolt php szoftverbe kell belenyúlnom. A kódolt programba természetesen nem de a templatek módosíthatóak. Itt találkoztam a következô helyzettel.
Szükségem lenne arra, hogy egy form-ot a submit elôtt leellenôrizzek. Ezt alapban a rendszer nem a beküldés elôtt, hanem utána végzi el és visszatér a hibaüzenettel ha van, tehát a form alján egy egyszerû input tag van type='submit'-tal. Mivel én a kódolt részbe nem tudok beleírni, marad az a megoldás hogy beküldés elôtt ellenôrzöm a formot, ezért az input-ot le kellene cserélnem egy javascriptes függvényre, ami ellenôriz és ha minden rendben csak akkor submitállja a formot.
Igen ám de a formon belül van egy hidden input aminek a neve submit...
És hiába csinálom meg a javascriptes függvényt, a várt 'Error: document.no1.submit is not a function' javascript hiba jön vissza. Átnevezni nem tudom a hidden inputot, mivel a kódolt részben ezt várja a program...
<html>
<script>
function submitform()
{
document.no1.submit();
}
</script>
<form name='no1' id='no1' action='no2.php' method='post'>
<input name='submit' type='hidden' value='true'>
<input type='button' value='Mehet' onclick='submitform()'>
</form>
</html>
<script>
function submitform()
{
document.no1.submit();
}
</script>
<form name='no1' id='no1' action='no2.php' method='post'>
<input name='submit' type='hidden' value='true'>
<input type='button' value='Mehet' onclick='submitform()'>
</form>
</html>
Van esetleg erre valami megoldás, vagy nincs?
Köszönöm
Én legszívesebben
Köszönöm
Az itt vázolt első
esetleg probáld meg a
document.forms
kollekción keresztül elérni a formot.fireEvent
fireEvent(document.no1, 'submit');
Tudom, hogy nem a legszebb megoldás, de sajnos
form
esetén a DOM kicsit furán viselkedik, és aform
elemei felülírják a metódusokat és tulajdonságokat.A fireEvent (mármint a natív
HTMLFormElement.prototype.sub
De kicsit gyanús, ha form
function ellenoriz() {
return (document.getElementById('akarmi').value.length);
}
document.getElementById('no1').onsubmit = ellenoriz;
Hát a firefox ok de a többi nem
Részletek?
Még egy próbát megér a következő:
A körültekintô
Kipróbáltam a fireevent-es megoldást, "HTMLFormElement.prototype.submit.call(document.no1); "-t is, de egyik sem mûködik Chorme-ban és IE-ben.
document.getElementById('no1'
probléma
submit
metódusához, mert amennyiben létezik ilyen nevű eleme a formnak, akkor az felüldefiniálja. Azaz aform.submit === form.getElementsByName('submit')[0]
. Ennek okán ez nem egy végrehajtható függvény.Á
Nekem a következő teljesen
IE
<html>
<head>
<title>Page Title</title>
</head>
<body>
<form action="" method="get" name="no1" id="no1">
<input type="hidden" name="submit" value="true" />
<input id="hehe" type="submit" name="op" />
</form>
<script type="text/javascript">
function ellenoriz() {
alert('submit');
}
document.getElementById('no1').onsubmit = ellenoriz;
setTimeout(function () {
document.getElementById('hehe').click();
}, 4000);
</script>
</body>
</html>
Az <input type="submit">-nak adtam egy id-t a könnyebbség kedvéért, dom műveletekkel meg lehet keresni.
A