为投递箱选项创建不同的默认值
Creating a varying default for a drop box option
我似乎在任何地方都找不到这个。如果它非常简单,我深表歉意。
我正在尝试在html中制作简单的下拉框,以显示许多留言簿条目。我正在使用 php 来处理数据库请求等。我对这一切都很好。我只是希望能够根据选择的条目数量更改选择框的默认选项。
有没有简单的方法可以做到这一点?我有一种感觉,它与一个简单的javascript调用有关,但我对这一切仍然很陌生。
这是 html:
<form id="displayform" action="guestbook.php" method="POST" >
Currently Displaying <select name="display" id="display" onchange="document.getElementById('displayform').submit()">
<option value="10" > 10 </option>
<option value="25" > 25 </option>
<option value="50"> 50 </option>
<option value="ALL"> ALL </option>
</select> results per page
</form>
不需要javascript,这可以通过PHP处理。甚至可以重构!
<?php
$options = array(10, 25, 50, 'ALL');
$selOpt = in_array($_POST['display'], $options) ? $_POST['display'] : $options[0];
?>
<form id="displayform" action="guestbook.php" method="POST">
Currently Displaying
<select name="display" id="display" onchange="document.getElementById('displayform').submit();">
<?php foreach ($options as $option){ ?>
<option value="<?=$option;?>"<?=($selOpt==$option?' select="selected"':'');?>>
<?=$option;?>
</option>
<?php } ?>
</select>
</form>
您需要
在 SQL 语句中使用 LIMIT
子句来限制查询返回的项目数。
<?php
$limit = (int) $_POST['display'];
$sql = 'SELECT * FROM guestbook ORDER BY date_enterred LIMIT ' . $limit;
?>
这是分页的一部分。有很多关于如何使用PHP执行此操作的好教程,可以通过快速的Google搜索找到。
相关文章:
- 我的shareService在angular 2中发送值工作正常,但当我渲染我的另一个组件时,会获得默认值
- jquerydatetimepicker日期和时间应在框默认值中,而无需单击框
- 如果值为空,如何设置输入的默认值?jQuery
- 骨干模型默认值-todos.js示例中不必要的代码
- jquery日期选择器年份范围默认值
- Html5输入属性的默认值,如最小值、最大值、大小等
- 如何基于数组值创建新实例
- 根据两个下拉列表的默认值禁用按钮
- 如何创建具有默认值的JavaScript对象字段?(AngularJS模型相关)
- Angularjs-设置不带ng选项的select的默认值
- jQuery Datepicker从日期开始设置默认值
- 如何设置浏览器打开的文件对话框的文件名(一些默认值)
- JQuery BlockUI鼠标加载光标没有't在Google Chrome中返回默认值
- 在表单输入字段中创建默认值
- 为投递箱选项创建不同的默认值
- 在防止默认值后重新创建自然链接单击事件
- 默认情况下使用值创建对象
- 是否有CSS属性的默认值列表?(所以我可以在js中为他们创建一个排除数组)
- 是新创建的元素,它不是DOM样式的一部分,或者所有值都设置为默认值
- Javascript数组——用起始索引和默认值创建数组的最快最有效的方法是什么?