Scipt om invoerveld te controleren werkt niet

Status
Niet open voor verdere reacties.

woerde

Gebruiker
Lid geworden
28 jun 2007
Berichten
16
Ik heb een scriptje dat je doorstuurt naar een bepaalde pagina als je het juiste woord invult en naar een andere pagina als je iets verkeerds invult. Nu werkt het volgende:
HTML:
<input class="field" type="text" onfocus="select();" name="username">
<input type="button" src="../../gifs/merchandise/submitbutton.gif" onClick="goochelaars(this.form)">
[js]
function goochelaars(form) {
if (form.username.value=="vernon") {
window.location="patterns.html"
} else {
window.location="blackjack.html"
}
}
[/js]
Hierbij is de button echter een standaard button, terwijl ik graag het plaatje dat er achter staat aangegeven als button heb. Maar als ik type="button" verander in type="image" dan werkt het script niet meer. De button is dan wel zoals ik het wil.

Als ik type="image" gebruik, dan werkt de volgende functie weer wel:
[js]
function goochelaars(form) {
if (form.username.value=="vernon") {
window.location="patterns.html"
alert("correct")
} else {
window.location="blackjack.html"
alert("niet correct")
}
}
[/js]
Maar die alerts wil ik dus weer niet hebben. Ik snap er niks van.:confused: Kan iemand me helpen?
 
Laatst bewerkt door een moderator:
Zo dan:

HTML:
<input class="field" type="text" id="field" />
<input type="image" src="../../gifs/merchandise/submitbutton.gif" onclick="goochelaars()" />

[JS]
function googchelaars() {
var obj = document.getElementById('field');
if ( obj.value == 'vernon' ) {
window.location.href = 'patterns.html';
} else {
window.location.href = 'blackjack.html';
}
}
[/JS]

Houd er wel rekening mee dat die absoluut niet veilig is!
 
Dit werkt helaas ook niet. Wellicht komt het omdat het invoerveld in een popup window staat gemaakt met behulp van deze site. Maar dan snap ik nog steeds niet waarom het met de alerts wel werkt of waarom het met de button wel werkt en niet alleen met het image.

Het is verder niet heel erg dat het niet veilig is, gaat gewoon om een simpele check.Geïnteresseerde mensen kunnen het antwoord op de vraag sowieso wel op zoeken op internet.
 
Laatst bewerkt:
Ik had de spelfout al aangepast. Maakt het uit dat ik het gewoon op mijn computer test in plaats van op het net? Maar het blijft natuurlijk raar dat het wel met die alerts werkt en niet meer zonder.
 
Nee, dat maakt niets uit, of je het lokaal test of online.

Het enige wat ik me kan bedenken is dat je de code niet goed hebt overgenomen.

Post eens de volledige pagina zoals je die nu hebt...
 
Hier is de pagina:
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

	<head>
		<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
		<meta name="generator" content="Adobe GoLive" />
		<title>zwart</title>
		<link href="../../css/basic.css" rel="stylesheet" type="text/css" media="all" />

<link rel="stylesheet" type="text/css" href="popup.css" />

<script type="text/javascript" src="popup-window.js"></script>
<script type="text/javascript" src="goochelaars.js"></script>
	</head>

	<body bgcolor="black" leftmargin="0" marginheight="0" marginwidth="0" topmargin="0">		



<div style="position: absolute; left: 148px; top: 41px; padding: 1em;">
				<table width="560" border="0" cellspacing="0" cellpadding="0">
					<tr height="47">
						<td valign="top" colspan="6" width="365" height="37"><span class="kop">Merchandise</span></td>
					</tr>
					<tr height="110">
							<td rowspan="3"align="left" width="30"></td>
							<td align="left" width="85"><img src="../../gifs/merchandise/poker.jpg" width="80" height="107" alt="Valsspelen bij Poker" border="0" title="Valsspelen bij Poker" /></a>
							<td align="left" valign="top" width="169"><span class="txt2">Valsspelen bij Poker:<br />
								<br />
								</span><span class="txt">Leer hoe je valsspelen bij poker kan herkennen en voorkomen.<br />
								<br /><br />
								</span><span class="txt"><a href="../../html/merchandise/poker.html">Lees meer...</a></span>
							<td width="22"></td>
							<td align="left" width="85"><img src="../../gifs/merchandise/patterns.jpg" width="80" height="107" alt="Patterns for The Three Shell Game" border="0" title="Patterns for The Three Shell Game" /></a>
							<td align="left" valign="top" width="169"><span class="txt2">Patterns for The Three Shell Game:<br />
								<br />
								</span><span class="txt">Een boekje met patronen voor het bekende spel 'balletje balletje'.<br />
								<br />
								</span><span class="txt"><A href="javascript: popup_show('popup', 'popup_drag', 'popup_exit', 'screen-center',         0,   0)">Lees meer...</A></span>
						</tr>
						<tr height="40">
							<td colspan="5"></td>
						</tr>
						<tr height="110">
							<td align="left" width="85"><img src="../../gifs/merchandise/blackjack.jpg" width="80" height="107" alt="Valsspelen bij Blackjack" border="0" title="Valsspelen bij Blackjack" /></a>
							<td align="left" valign="top" width="169"><span class="txt2">Valsspelen bij Blackjack:<br />
								<br />
								</span><span class="txt">Ontdek hoe er in de jaren '50 en '60 op grote schaal vals werd gespeeld bij het spel blackjack.<br />
								<br />
								</span><span class="txt"><a href="../../html/merchandise/blackjack.html">Lees meer...</a></span>
							<td width="22"></td>
							<td align="left" width="85"><img src="../../gifs/merchandise/kaarten.gif" width="80" height="107" alt="Gemerkte kaarten" border="0" title="Gemerkte kaarten" /></a>
							<td align="left" valign="top" width="169"><span class="txt2">Gemerkte kaarten:<br />
								<br />
								</span><span class="txt">Gemerkte kaarten speciaal voor het spel blackjack.<br />
								<br /><br />
								</span><span class="txt"><a href="../../html/merchandise/kaarten.html">Lees meer...</a></span>
						</tr>
				</table>
</div> 

<div class="sample_popup"     id="popup" style="display: none;">

<div class="menu_form_body">

<form>
<table width="291" height="144" border="0" cellspacing="0" cellpadding="0">
  <tr height="48">
	<td width="291" valign="center" align="center"><span class="txt2">Wat is de achternaam van 'de professor'?</span></td>
  </tr>
  <tr height="48" valign="center" align="center">
        <td width="291" style="background-image: url(../../gifs/merchandise/inputfield.gif); background-repeat: no-repeat;background-position: 50% 50%;"><input class="field" type="text" id="field" />
</td>
  </tr>
  <tr height="48">
	<td width="291" valign="center" align="center">
		<input type="image" src="../../gifs/merchandise/submitbutton.gif" onclick="goochelaars()" />
		 

  </tr>
</table>
</form>
</div>

</div>
                                                                      
<div style="position: absolute; left: 598px; top: 364px; padding: 1em;">
<form target="paypal" action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_cart">
<input type="hidden" name="business" value="BU55QY5JFLQ5Q">
<input type="hidden" name="display" value="1">
<input type="image" src="../../gifs/merchandise/winkelwagenbekijken.gif" width="110" height="40"border="0" name="submit" alt="PayPal, de veilige en complete manier van online betalen.">
<img alt="" border="0" src="https://www.paypal.com/nl_NL/i/scr/pixel.gif" width="1" height="1">
</form>
</div>


		<table width="795" border="0" cellspacing="0" cellpadding="0" height="463">
			<tr height="57">
				<td width="164" height="57" background="../../gifs/home_01.jpg"></td>
				<td width="365" height="57" background="../../gifs/home_02.jpg"></td>
				<td width="266" height="57" background="../../gifs/logokl_03.jpg"></td>
			</tr>
			<tr height="37">
				<td width="164" height="37" background="../../gifs/home_04.jpg"></td>
				<td width="365" height="37" background="../../gifs/home_05.jpg"></td>
				<td width="266" height="37" background="../../gifs/logokl_06.jpg"></td>
			</tr>
			<tr height="121">
				<td width="164" height="121" background="../../gifs/home_07.jpg"></td>
				<td rowspan="3" align="right" valign="top" width="365" height="369" background="../../gifs/home_08.jpg">
				<td width="266" height="121" background="../../gifs/home_09.jpg"></td>
			</tr>
			<tr height="134">
				<td width="164" height="134" background="../../gifs/home_10.jpg"></td>
				<td width="266" height="134" background="../../gifs/home_11.jpg"></td>
			</tr>
			<tr height="114">
				<td width="164" height="114" background="../../gifs/home_12.jpg"></td>
				<td width="266" height="114" background="../../gifs/home_13.jpg"></td>
			</tr>
		</table>
        <script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-6344851-1");
pageTracker._trackPageview();
} catch(err) {}</script>
      
	</body>

</html>
En hier het javascript:
[js]
function googchelaars() {
var obj = document.getElementById('field');
if ( obj.value == 'vernon' ) {
window.location.href = 'patterns.html';
} else {
window.location.href = 'blackjack.html';
}
}
[/js]
 
Laatst bewerkt door een moderator:
Je hebt de typfout er nog steeds in staan.

(1e regel van het javascript)
 
Stom van me. Had het wel al aangepast maar daarna weer wat andere dingen geprobeerd en uiteindelijk bij de tweede keer vergeten aan te passen. Nu is het aangepast en werkt het nog steeds niet.
 
Zet het eens online, zodat we het kunnen zien. Ik kan je bron wel vanaf hier kopieren, maar dan zien we ook alleen een zwarte pagina.
 
Probeer eens de <form> tags weg te halen. Die zijn hier overbodig.

Daarnaast zou je ook nog kunnen proberen om van je <input> dit te maken:

HTML:
<input type="image" src="../../gifs/merchandise/submitbutton.gif" onclick="goochelaars(); return false;" />
 
Het weghalen van de <form> tags werkte. Hartelijk dank voor je hulp en geduld Erik.
 
Ik zou graag hebben dat het invoerveld automatisch geselecteerd is als de popup opent. Ik heb al verschillende dingen geprobeerd, maar ik krijg het niet voor elkaar. Wellicht omdat geen echt window is? Iemand een idee hoe ik dit voor elkaar krijg?

Vast bedankt,
Peter
 
ik heb niet het hele thread doorgelopen, maar:
[JS]document.getElementById('je_invoerveld').focus();[/JS]zou moeten werken.


(moet je wel het invoerveld een
HTML:
id="je_invoerveld"
meegeven)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan