Question

i have find out the solution just added onclick in submit button update value in hidden field.As i get hidden field value the pagenation is getting displayed and in pagination anchor i have used to display pagination as i onclick the pagin() the page number passed to pagin function in which i used ajax to post pageno and limits problem is i am get ajax data of limits by $_POST['limits'] but cant get value of pageno as i used $_POST['pageno'] why?

for($i=1; $i<=$pages; $i++)
echo '<td id="'.$i.'"><a href="javascript:void(0);" class="pagenav" id="but'.$i.'"  style="cursor: hand;cursor: pointer;font-size:18px" onclick="javascript: pagin('.$i.'); ">'.$i.'</a></td>';} 



<script>
            function pagin(value){
    var f = document.getElementById('pageno').value="";
var option = document.getElementById('mydisplaylimits').value="";
var limits = document.getElementById('limits').value;
var pageno = document.getElementById('pageno').value = +value;

        $.ajax({
  type: "POST",
  url: "page.php",
  data: {
       limits: limits,
 pageno: pageno
    },
  success: function() {


  } 
});
    }
    //-->
    </script>


<form action="page.php" method="post" id="pagination" name="pagination">
    <input type="HIDDEN" value=""  id ="limits" name="limits">
    <input type="HIDDEN" id="pageno" value="" name="pageno">
    <select style="border: 2px outset rgb(204, 51, 0);" size="1" name="mydisplaylimit" id="mydisplaylimit" >
    <option value="5" selected="selected" id="mydisplaylimits"  >5</option>
    <option value="10" id="mydisplaylimits"  value="10" >10</option>
    <option value="20"  id="mydisplaylimits"  >20</option>
    <option value="50" id="mydisplaylimits"    >50</option>
    </select><input type="SUBMIT" value="GO"  style="border: 2px outset rgb(204, 51, 0);" class="form_enter" onclick="$('#limits').val($('#mydisplaylimit').val())"></form>
Was it helpful?

Solution

I don't understand why you need the hidden input. Just set the default option in the <select> to the value that was posted.

<form action="page.php" method="post" id="pagination" name="pagination">
    <input type="HIDDEN" id="pageno" value="" name="pageno">
    <select style="border: 2px outset rgb(204, 51, 0);" size="1" name="mydisplaylimit" id="mydisplaylimit">
<?php
$default_limit = isset($_POST['mydisplaylimit']) ? $_POST['mydisplaylimit'] : 5;
foreach (array(5, 10, 20, 50) as $option) {
    ?>
    <option value="<?php echo $option ?>" <? if($option == $default_limit) { echo "selected"; } ?> >
    <?php
}
?>
    </select>
    <input type="SUBMIT" value="GO"  style="border: 2px outset rgb(204, 51, 0);" class="form_enter">
</form>

OTHER TIPS

It's difficult to understand what your question is asking. I've taken your code however and tidied it up some. I'm sure there are more improvements that could easily be made.

Move this to head HEAD area of your page instead of the body.

<?php
if isset($_POST['mydisplaylimit'])) {
    $mydisplaylimit = $_POST['mydisplaylimit'];
}
else {
    $mydisplaylimit = "some default value";
}
?>

Your form should look like this now.

<form action="page.php" method="post" id="pagination" name="pagination">
    <input type="HIDDEN" value="<?php echo $mydisplaylimit;?>" id="limits" name="limits">
    <input type="HIDDEN" id="pageno" value="" name="pageno">
    <select style="border: 2px outset rgb(204, 51, 0);" size="1" name="mydisplaylimit" id="mydisplaylimit">
    <option value="5" selected="selected">5</option>
    <option value="10">10</option>
    <option value="20">20</option>
    <option value="50">50</option>
    </select>
    <input type="SUBMIT" value="GO"  style="border: 2px outset rgb(204, 51, 0);" class="form_enter">
 </form>
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top