Php 简单的ajax onclick问题

Php 简单的ajax onclick问题,php,jquery,ajax,Php,Jquery,Ajax,我很难设置在div框上显示结果的简单菜单: 我有一个10个链接的列表,链接到我服务器上返回数据的php文件。 我希望这样,当查看器单击其中一个链接时,php文件中的数据将显示在屏幕上的div框中,然后当他单击另一个链接时,它将在div框中显示该php文件中的数据(替换前面的文本) 我知道这很简单,但我不能让它工作。我正在使用jQuery,我想知道你们是否有快速解决方案 谢谢 更新:在javascript代码方面,我几乎失败了。但以下是框架的基本思想: <div class="tabs"&

我很难设置在div框上显示结果的简单菜单:

我有一个10个链接的列表,链接到我服务器上返回数据的php文件。 我希望这样,当查看器单击其中一个链接时,php文件中的数据将显示在屏幕上的div框中,然后当他单击另一个链接时,它将在div框中显示该php文件中的数据(替换前面的文本)

我知道这很简单,但我不能让它工作。我正在使用jQuery,我想知道你们是否有快速解决方案

谢谢

更新:在javascript代码方面,我几乎失败了。但以下是框架的基本思想:

 <div class="tabs">
        <ul class="tabNavigation" style="float:left; padding:1px;">
            <li><a href="#displayphpfile">Load phpfile1</a></li>
            <li><a href="#displayphpfile">Load phpfile2</a></li>
            <li><a href="#displayphpfile">Load phpfile3</a></li>
        </ul>
        <div id="displayphpfile">
            <p>Load phpfile1</p>
        </div>
    </div>

加载phpfile1


我还没有测试过这一点,但这与您想要的接近吗

<script type="text/javascript">
    $(document).ready(function() {
        $('a').click(function() {
            var file = $(this).text().toLowerCase() + '.php';
            $.ajax({
                url:file,
                cache:false,
                success: function(response) {
                    $('#data_goes_here').html(response);
                }
            });
            return false;
        });
    });
</script>
<ol>
    <li><a href="#">Foo</a></li>
    <li><a href="#">Bar</a>
    <li><a href="#">Baz</a></li>
</ol>

<div id="data_goes_here"></div>

$(文档).ready(函数(){
$('a')。单击(函数(){
var file=$(this.text().toLowerCase()+'.php';
$.ajax({
url:file,
cache:false,
成功:功能(响应){
$('data#u goes_here').html(响应);
}
});
返回false;
});
});

  • jQuery有一个特定的方法来实现这一点:load()

    不过,我会稍微更改一下您的示例,以便链接的HREF指向php文件:

    <div class="tabs">
        <ul class="tabNavigation" style="float:left; padding:1px;">
            <li><a href="phpfile1.php">Load phpfile1</a></li>
            <li><a href="phpfile2.php">Load phpfile2</a></li>
            <li><a href="phpfile3.php">Load phpfile3</a></li>
        </ul>
        <div id="displayphpfile">
            <p>Load phpfile1</p>
        </div>
    </div>
    

    Biped Shark正在调用一个文档。准备好在一个click元素中

    应该是:

    <script type="text/javascript">
        $(document).ready(function() {
            $('a').click(function() {
                var file = $(this).text().toLowerCase() + '.php';
                $.ajax({
                        url:file,
                        cache:false,
                        success: function(response) {
                                $('#data_goes_here').html(response);
                        }
                    });
                return false;
                });
            });
    </script>
    
    
    $(文档).ready(函数(){
    $('a')。单击(函数(){
    var file=$(this.text().toLowerCase()+'.php';
    $.ajax({
    url:file,
    cache:false,
    成功:功能(响应){
    $('data#u goes_here').html(响应);
    }
    });
    返回false;
    });
    });
    

    但是load方法的代码要干净得多。

    有没有与这个问题相关的代码?;)如果您还没有安装Firebug(比Firefox的javascript控制台好得多),那么请安装Firebug,让我们看看js error output.hmm,没有显示错误,但它没有加载php文件。我想我做错了什么。所以要调试:我更改var file=''行;但仍然没有出现任何问题(我将其改为“http://www.google.com”,只是在评论中没有显示),您不能从另一个域对文件发出ajax请求。这可能是问题所在吗?已修复;谢谢你接电话。load()方法不是很理想,除非您不介意它带来的ajax默认值(例如,没有缓存)。
    <script type="text/javascript">
        $(document).ready(function() {
            $('a').click(function() {
                var file = $(this).text().toLowerCase() + '.php';
                $.ajax({
                        url:file,
                        cache:false,
                        success: function(response) {
                                $('#data_goes_here').html(response);
                        }
                    });
                return false;
                });
            });
    </script>