点击提交后PHP更新div

时间:2018-01-12 10:26:45

标签: javascript php jquery html

我正在尝试更新"刷新"点击提交按钮后,div也是每5秒钟。我检查了一些问题,但我找不到我要找的东西。

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <?php 
    echo '<div id="refresh">';
        while ($r = $q->fetch()):
            echo 'Sender: ';
            if($r['senderid'] == $a) {echo $query1['username'];}
            elseif($r['senderid'] == $b) {echo $query2['username'];}
            echo '</br>';
            echo $r['message'];
            echo '</br></br>';
        endwhile;
    echo '</div>';
    ?>

    <form method="post">
        <input type="hidden" name="a" value="<?php echo $a;?>">
        <input type="hidden" name="b" value="<?php echo $b;?>">
        <textarea name="message" rows="3" cols="30"></textarea><br><br>
        <input id="submit" type="submit" value="Submit" />
    </form>

    <script>
    $(document).ready( function() {
        $("form").on("submit", function(e) {
            e.preventDefault(); // Prevent default form submission action
            $.post("submit.php", $("form").serialize()); // Post the data
            $('textarea[name=message]').val('')
        });
    });
    </script>

1 个答案:

答案 0 :(得分:0)

请对$.postsetTimeout

进行一些基本调查

以下是一个示例 - 您需要考虑几个问题

var val = "";
function refreshDiv() {
   var $text = $('textarea[name=message]');
   val = $text.val() || val; // what to do if user clears the field?
   if (val == "") return; // stop if nothing there
   $.post("submit.php", $("form").serialize(),function(data) {
     $("#refresh").html(data)); // show the data
     setTimout(refreshDiv,5000); // call it again in 5 secs
     // $text.val(''); // not sure about this...
   });
}
$(function() {
    $("form").on("submit", function(e) {
      e.preventDefault(); // Prevent default form submission action
      refreshDiv();
    });
});