参考此示例getrusage()
解决方案1,PHP
1)索引表
<form action="loadPage.php" method="POST" name="theForm" id="theForm">
<select form="theForm" name="selectedPage">
<option value="page_1">Page 1</option>
<option value="page_2">Page 2</option>
...
</select>
<input type="submit" value="Load page" />
</form>
2)PHP处理程序
<?php
//loadPage.php
$requested_page = $_POST['selectedPage'];
switch($requested_page) {
case "page_1":
header("Location: page_1.php");
break;
case "page_2":
header("Location: page_2.php");
break;
default :
echo "No page was selected";
break;
}
?>
我只是想做而不需要点击提交。我想通过单击下拉列表值来实现这一点,然后检查它是否等于Php文件中的值,如果是则显示页面。
非常感谢。
答案 0 :(得分:3)
编写html如下:
<select form="theForm" name="selectedPage" onchange="this.form.submit()">
<option value="page_1">Page 1</option>
<option value="page_2">Page 2</option>
</select>
当您选择选项时,这将提交表单。
答案 1 :(得分:3)
这将导致&#34;重定向&#34;当您在下拉列表中选择一个选项时:
将public void showMsgHistory() throws IOException {
FileReader reader = new FileReader( "persMsgHistory.txt" );
BufferedReader br = new BufferedReader(reader);
messageHistory.read(br, null);
}
事件添加到onchange
以更改当前浏览器位置。
将选择选项值更改为页面的URL。
(然后您可以在select
中删除PHP标题指示。不再需要。)
loadPage.php
Jay Blanchard在评论部分提出的问题的答案:
这可以在没有内联JavaScript的情况下完成(为了便于维护和重用 - )
当然,那也是可能的。例如,使用jQuery:
<select form="theForm" name="selectedPage"
onchange="if (this.value) window.location.href=this.value">
<option value="page_1.php">Page 1</option>
<option value="page_2.php">Page 2</option>
</select>
请参阅http://api.jquery.com/change
或者您可以与$('#SelectId').change(function() {
//alert( this.value ); // or $(this).val()
window.location.href = 'http://' + this.value;
});
.on('change')
你可以不用jQuery吗?
当然,那也是可能的。您可以使用$('#SelectId').on('change', function() {
//alert( this.value ); // or $(this).val()
window.location.href = 'http://' + this.value;
});
选择元素,并使用document.getElementById()
绑定事件处理。
addEventListener