0

我已经找到了刚刚在隐藏字段中的提交按钮更新值中添加 onclick 的解决方案。当我获得隐藏字段值时,分页正在显示,并且在分页锚中我习惯于显示分页,因为我在点击 pagin() 时通过了页码我使用 ajax 发布 pageno 和限制问题的分页功能是我通过 $_POST['limits'] 获取限制的 ajax 数据,但由于我使用 $_POST['pageno'] 无法获得 pageno 的值,为什么?

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>
4

2 回答 2

0

很难理解你的问题在问什么。但是,我已经使用了您的代码并对其进行了一些整理。我敢肯定,还有更多可以轻松进行的改进。

将其移动到页面的头部 HEAD 区域而不是正文。

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

您的表单现在应该如下所示。

<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>
于 2013-10-05T06:07:31.500 回答
0

我不明白你为什么需要隐藏输入。只需将默认选项设置<select>为发布的值即可。

<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>
于 2013-10-05T07:32:36.427 回答