0

我有一个页面显示给定年份的数据。

我想通过下拉菜单向用户提出一个简单的问题,例如“您希望看到哪一年”。

数据集(从数据库调用)由单个变量定义$year

我目前的解决方案是作为用户在表单中提出问题:

<form id="year" method="post" action="processing.php">  
    <select name="year" >
        <option value="2011">2011</option>
        <option value="2012" selected>2012</option>
        <option value="2013">2013</option>
    </select>
    <input type="submit" value="View Year" />

</form> 

页面 processing.php 有一个由 POST 数据填充的隐藏字段,$_POST['year']并自动将其提交回原始页面,原始页面又通过从 processing.php 新接收的 POST 数据定义变量 $year

processing.php 页面上的代码:

$year=$_POST['year'];

echo '
<div class="hide" >
    <form id="year" method="post" action="original_page.php">
        <input name="year" value="'.$year.'" />
        <input type="submit" onload="submitForm()" />
    </form>
</div>  


<script>
    function submitForm()
    {
     document.year.submit();
    }
</script>
';

问题1:这是实现这一目标的明智方式吗,我可以做一些更优雅的事情吗?

问题 2:它不起作用 - 第二页在加载时不会将我转发回第一页,我的代码有什么问题?

谢谢!

4

1 回答 1

0

我认为您正在谈论的优雅AJAX方法称为. 它将允许您从服务器检索数据,而无需切换页面。

请参阅:您的代码通过 jQuery $.get 实现 AJAX

当然,现在您的processing.php脚本将需要检索您要显示的数据并以 HTML 格式返回,以便$.get回调可以将其放入retrieved_contents div。

于 2012-12-03T00:23:34.227 回答