点击链接应该在同一页面上显示结果.BACK和REFRESH按钮必须正常工作



基本上,在我的网页(fields.php)中,我有两个文本框(X和Y)、一个提交按钮和两个div标记(div id="load",div id="result")。基于我们在文本框中,查询将从数据库中获取一些值,并将其显示在DIV id="load"中。此外,我已经将结果显示为链接(我只是使得结果显示在锚标签之间)。所以我的问题来了,一旦我们点击DIV id="load"中的任何链接,查询就应该在后台运行并且它应该在DIV id="result"中显示某种类型的值(从数据库获取)最重要的是,刷新/后退/前进按钮应该能正常工作我的意思是,例如,假设我们在DIV id="load"中有4个链接,如wwww、xxxx、yyyy、zzzz。因此,如果我点击链接wwww,应该会得到一些结果(由查询处理)显示在DIV id="result"内部。所以现在,如果我点击xxxx,结果应该会替换wwww的结果。此外,如果我按下后退按钮,我应该会看到结果用于DIV id="result"中的wwww。

有人能帮我吗?任何人都能提供样本代码吗。

这是我的代码:

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <title>history plugin demo</title>
    </head>
    <body>
    <?php
        $x = ( !empty( $_REQUEST['X'] ) ? $_REQUEST['X'] : null );
        $y = ( !empty( $_REQUEST['Y'] ) ? $_REQUEST['Y'] : null );
    ?>
        Ajax load<BR>
            <form id="myForm" action='fields.php' method='GET' rel="history">
                X <BR>
                <input type="text" name="X" id="ix" value="<?=$x;?>"><BR> <BR>
                Y <BR>
                <input type="text" name="Y" id="iy" value="<?=$y;?>"> <BR> <BR>
                <input id="sub" type="submit" value="Search" align="centre"/>
            </form>
        <hr>
            <!-- here i am performing lot of database queries using php, but to show it to you, i have simplified the code!--> 
            <div id="load"><a href= "#")> <?php echo $x; ?> </a></div> <!-- so here whne i click on the link, i should pass the link as a text parameter to a  query  and display the result in div id= result IMPORTANT is : BACK AND REFRESH BUTTON SHOULD WORK AS NORMALLY !-->
            <div id="result"> </div>
        <hr>
    </body>
</html>

由于您需要保持后退按钮才能正常工作,因此即使单击后退按钮,也可以使用get参数来显示结果。我建议你改一下

<div id="load"><a href= "#")> <?php echo $x; ?> </a></div>
<div id="result"> </div>

<div id="load"><a href= "?link=<?php echo $x; ?>")> <?php echo $x; ?> </a></div>
<div id="result">
  <?php if (isset($_GET['link'])) {?>
  <!--do all the db related stuff here to fetch the link result-->
    <?php $link_clicked=$_GET['link'];?>
    <!--//this is my stuff-->
    <?php
      if ($link_clicked == 'link1') 
    echo "link1 results";
      else if ($link_clicked == 'link2')    
    echo "link2 results";
      else
    echo "no results";
    ?>
  <?php }?>
</div>

在结果div中,单击的链接是从$_GET中获得的,并且可以从数据库中获取特定链接的结果。如果您想在单击页面刷新按钮时清除结果div,可以使用javascript重写浏览器查询字符串。希望这有帮助:)

最新更新