0

クリックしたときに特定のdivを更新するように設定されたボタンがあります。問題は、それが一度しか機能しないことです。

ボタンがクリックされたときに更新する必要があるdiv:

<div id="refresh">

    <?php include('space.php'); ?>

</div>

divを更新するスクリプト:

jQuery(function() {
    jQuery("#go").click(function() {
        jQuery("#refresh").load("space.php");
    });
});

およびspace.phpの内容:

 <?php

    /* get disk space free (in bytes) */
    $df = disk_free_space("/home");
    /* and get disk space total (in bytes)  */
    $dt = disk_total_space("/home");
    /* now we calculate the disk space used (in bytes) */
    $du = $dt - $df;
    /* percentage of disk used - this will be used to also set the width % of the progress bar */
    $dp = sprintf('%.2f',($du / $dt) * 100);

    /* and we formate the size from bytes to MB, GB, etc. */
    $df = formatSize($df);
    $du = formatSize($du);
    $dt = formatSize($dt);

    function formatSize( $bytes )
    {
            $types = array( 'B', 'KB', 'MB', 'GB', 'TB' );
            for( $i = 0; $bytes >= 1024 && $i < ( count( $types ) -1 ); $bytes /= 1024, $i++ );
                    return( round( $bytes, 2 ) . " " . $types[$i] );
    }

    ?>



        <table class='ipb_table' cellspacing='1'>  

                <tr>

                    <td class='row2' colspan='2'>

                        <div class='progress'>

                                <div class='prgbar'></div>

                        </div>

                    </td>

                <tr>


                    <td class='row2'>

                        Disk Space:

                    </td>


                    <td class='row2'>

                        <?php echo "$dt"; ?>

                    </td>

                </tr>

                <tr>

                    <td class='row2'>

                        Free: 

                    </td>

                    <td class='row2'>

                        <?php echo "$df"; ?>

                    </td>

                </tr>

                <tr>

                    <td class='row2'>

                        Used:

                    </td>

                    <td class='row2'>

                        <?php echo "$du"; ?>

                    </td>

                </tr>

                <tr>

                    <td class='row2' colspan='2' align='center'>

<a class='ipsButton' id='go'>Refresh<a>

                    </td>

                </tr>                           

        </table>   
4

2 に答える 2

0

これを試してみてください、それはうまくいくかもしれません。

jQuery(function() {
    jQuery("#go").on('click', function() {
        jQuery("#refresh").load("space.php");
    });
});​
于 2012-05-13T16:56:57.573 に答える
0

<?php include('space.php'); ?>
Jqueryを削除しても問題ありません。これをテストしてください

    jQuery(function() {
    var i=1;
    jQuery("#go").click(function() {
        jQuery("#refresh").html(i);
        i++;
    });
});​

jSfiddle

space.php同じサーバー上にあることを確認してください。そして2つ目は.load、の置き換えではないということですphp include。これを行うjQuery Ajax

于 2012-05-13T16:57:56.653 に答える