Jump to content

variable doesn't work for document.getElementById


demuro1

Recommended Posts

Hello, I'm trying to save some keystrokes and I have assigned document.getElementById('pageNumber').value; to a variable. The first section of code is the function that I am having trouble with. The second section is all the code I am currently using. In the if statement the last alert will give the correct value but the if statement won't populate on the web page. If I copy the document.getElementById('pageNumber').value statement and replace it for the variable p in the if statement p=1, then the value is reassigned and populated properly on the page. Any ideas? Thanks

  function page(input, form)  {   alert(input.name);   alert(form.pageNumber.value);     var p = document.getElementById('pageNumber').value;   if(p < 1)   {    p = 1;   }     alert(p);  }

<html><head>  <title>test</title>  <script type='text/javascript'>/*make some magic*/    function page(input, form)  {   alert(input.name);   alert(form.pageNumber.value);     var p = document.getElementById('pageNumber').value;   if(p < 1)   {    p = 1;   }     alert(p);  }  function keystrokeSubmit(textbox,e,form)  {   e = e? e : window.event;   var prskeyrtrn = e.keyCode? e.keyCode : e.which? e.which : e.charCode? e.charCode :null;   if (prskeyrtrn == 13 && textbox.id == 'pageField')     {	 //alert(textbox.id);	 page(textbox,form);    }  }  function buttonSubmit(button,form)  {   if (button.id == 'previousPage' || button.id == 'nextPage')   {    //alert(button.id);    page(button,form);   }  }   </script></head> <body>   <form name="headForm" id="headForm"  method="POST" action="<?php echo ($_SERVER['PHP_SELF']); ?>">     <input type="text" name="pageField" id="pageField" placeholder="enter a page number" onkeypress="keystrokeSubmit(this,event,form)">   <br>   <input type="text" style="visibility:visible" name="pageNumber" id="pageNumber" value="0">   <br>   <input type="button" name="nextPage" id="nextPage" value="nextPage" onclick="buttonSubmit(this,form);">   <input type="button" name="previousPage" id="previousPage" value="previousPage" onclick="buttonSubmit(this,form);">  </form> </body>  </html>

Link to comment
Share on other sites

   function keystrokeSubmit(textbox, e, form)  { .....  }   </script></head> <body>  <form ....>     <input type="text" name="..." id="..." placeholder="..." onkeypress="keystrokeSubmit(this, event, form)"> ....  </form>

Interesting code.
Link to comment
Share on other sites

how so is the code interesting? and do you have any suggestions to make this code better? I'd love any feedback you have Here's what it ended up as:

<html><?php$maxPage = 9;$pageNumber = $_POST['pageNumber'];if(!isset($pageNumber)){$pageNumber=1;}?> <head>  <title>page number</title>   <script type='text/javascript'>     function page(input,form)   {	//alert(input.id);	//alert(document.getElementById('pageNumber').value);  	var p = parseInt(document.getElementById('pageNumber').value);  //input.id is numberField  	if ((input.id == 'pageField') &&	(	(isNaN(document.getElementById('pageField').value)) ||	(parseFloat(document.getElementById('pageField').value) % 1 !== 0) ||	(parseInt(document.getElementById('pageField').value) < 1) ||	(parseInt(document.getElementById('pageField').value) > <?php echo $maxPage; ?>)	))	{	 alert('I\'m Sorry, ' + document.getElementById('pageField').value + '\ is not a valid page number. \nYou will be returned to page ' + document.getElementById('pageNumber').value);	}	else if (input.id == 'pageField')	{	 document.getElementById('pageNumber').value = parseInt(document.getElementById('pageField').value);	}//input.id is previousPage	else if (input.id == 'previousPage' && p <= 1)	{	 alert('You are already on page ' + p);	}	else if (input.id == 'previousPage')	{	 p -= 1;	 document.getElementById('pageNumber').value = p;	}//input.id is nextPage	else if (input.id == 'nextPage' && p >= <?php echo $maxPage; ?>)	{	 alert('You are on the last page.');	}	else if (input.id == 'nextPage')	{	 p += 1;	 document.getElementById('pageNumber').value = p;	}	else {alert('pageNumber Error');}	form.submit();   }      function keystrokeSubmit(textbox,e,form)   {   e = e? e : window.event;   var prskeyrtrn = e.keyCode? e.keyCode : e.which? e.which : e.charCode? e.charCode :null;    if (prskeyrtrn == 13 && textbox.id == 'pageField')	{	 //alert(textbox.id);	 page(textbox,form);	}  }   function buttonSubmit(button,form)   {   if (button.id == 'previousPage' || button.id == 'nextPage')	{	 //alert(button.id);	 page(button,form);	}   }     </script></head> <body>  <form method="POST" action="<?php echo ($_SERVER['PHP_SELF']); ?>">   <input type="text" name="pageField" id="pageField" placeholder="Jump to Page" onkeypress="keystrokeSubmit(this,event,form);"><br>   <input type="text" name="pageNumber" id="pageNumber" value="<?php echo $pageNumber; ?>"><br>   <input type="button" name="previousPage" id="previousPage" value="previous page" onclick="buttonSubmit(this,form);">   <input type="button" name="nextPage" id="nextPage" value="next page" onclick="buttonSubmit(this,form);">  </form> <?php   print("The current page number is ". $pageNumber);  print("<br>");?>  </body>  </html>

Edited by demuro1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...