0

さまざまなページへのリンクを含む「navbar」があるメインのphpファイルがあり、「navbar」項目をクリックすると、divのコンテンツをそれぞれのページに置き換えます。

navbar.php:

<li id="nav-home"><a class="button" href="main.php">Home</a></li>
<li id="nav-attn"><a class="button" href="?nav=page1.php">Page1</a></li>    
<li id="nav-tran"><a class="button" href="?nav=page2.php">Page2</a></li>
<li id="nav-mr"><a class="button" href="?nav=page3.php">Page3</a></li>

main.php:

<script>
$(document).ready(function() {  
$('#content').load('<?php echo $_GET['nav'] ?>');           
});
</script>

このコードでは、navbar 項目をクリックすると、div コンテンツがそれぞれのページ参照に変更される必要があると想定しています。たとえば、page1 をクリックすると、URL が main?nav=page1.php に変更されますが、div コンテンツを変更するスクリプトはまったくトリガーされません。訂正してください。ただし、リンクを「#」に変更したくありません。

4

4 に答える 4

1
<script>
$(document).ready(function() {  
  $('uL#navbar a').click(function(e){
    e.preventDefault();
    $('#content').load($(this).attr('href'));
  });
});
</script>
于 2012-09-09T08:33:12.477 に答える
0

あなたはこれを試すことができます

$(document).ready(function() { 
    $('ul li a.button').on('click', function(e){
        e.preventDefault();
        $('#content').load($(this).attr('href'));           
    });
});
于 2012-09-09T08:33:31.453 に答える
0

試す;

$(document).ready(function() { 
    $('.button').on('click', function(e){
        e.preventDefault();
        $('#content').load($(this).attr('href'));           
    });
});

PHP で、エコーが次のようになるようにコードを変更します。

<li id="nav-attn"><a class="button" href="yourpage.php?nav=page1.php">Page1</a></li> 
于 2012-09-09T08:48:15.657 に答える
0

そのためにはAJAXを使用する必要があります

<script>
    $(function(){
        $('.button').on('click', function(e){
            e.preventDefault();
            $('#content').load($(this).attr('href'));
        });
    })
</script>

<li id="nav-home"><a class="button" href="main.php">Home</a></li>
<li id="nav-attn"><a class="button" href="?nav=page1.php">Page1</a></li>    
<li id="nav-tran"><a class="button" href="?nav=page2.php">Page2</a></li>
<li id="nav-mr"><a class="button" href="?nav=page3.php">Page3</a></li>
<div id="content"></div>
于 2012-09-09T08:36:28.323 に答える