簡體   English   中英

在Ajax之后重新加載PHP代碼

[英]Reload PHP code after Ajax

我還在這里學習,請諒解我的代碼是否混亂。 我有3個單獨的頁面,如下所示:
AccountView.php ---顯示數據的位置:

                      <div class="panel-body">
                        <div id="opentasks">
                        <!-- view Open tasks -->
                            <?php $task= new acct; echo $task->accountActiveTasks()?>
                        </div>
                        <!-- end view open tasks -->
                        <!-- start adding quick task -->
                          <div class="chat-form">
                             <!--  <form method="post" action="addTask.php"> -->
                              <div class="input-cont ">
                                  <input type="text" class="form-control col-lg-12" placeholder="Add a quick Task..." name ="quicktask" id="quicktask">
                              </div>
                              <div class="form-group">
                                  <div class="pull-right chat-features">
                                      <a href="javascript:;">
                                          <i class="icon-camera"></i>
                                      </a>
                                      <a href="javascript:;">
                                          <i class="icon-link"></i>
                                      </a>
                                      <input type="submit" class="btn btn-danger" name="AddTask" value="Add" onclick="add_quick_task()">


                                      <input type="hidden" name="acct" id="acct" value="<?php echo $_REQUEST['acctname']?>">
                                      <input type="hidden" name="user" id="user" value="<?php $username = $_SESSION['username']; echo $username?>"> 
                                  </div>
                              </div>

task.js->從AccountView.php獲取一項輸入

function add_quick_task(){
            var xmlhttp;
            if (window.XMLHttpRequest) {

                xmlhttp = new XMLHttpRequest();
            }else{

                xmlhttp = new ActiveXObject("microsodt.XMLHTTP");
            }

        var acct = document.getElementById('acct').value;
        var quicktask = document.getElementById('quicktask').value;
        // var taskstatus = 'Active';
        var user = document.getElementById('user').value;

        xmlhttp.onreadystatechange = function(){

            if (xmlhttp.readyState==4) {
                document.getElementById('panel-body').innerHTML = xmlhttp.responseText;

            }   
        }
            url = "addTask.php?acct="+acct+"&quicktask="+quicktask+"&user="+user;
            xmlhttp.open("GET", url, true);
            xmlhttp.send();

        }

account_functions.php --- PHP函數從mysql獲取數據的地方

     public function accountActiveTasks(){
      $varacctname = $_REQUEST['acctname'];
      $varViewActiveTasks = mysql_query("SELECT * from tasks WHERE taskresource='$varacctname' && taskstatus='Active'");

      while ($rows= mysql_fetch_array($varViewActiveTasks)) {
           $this->accttask = $rows['tasktitle'];
           $this->acctTaskStatus = $rows['taskstatus'];
           $this->acctTaskOwner = $rows['taskowner'];

                              echo "<div class=\"timeline-messages\">

                          <div class=\"msg-time-chat\">
                              <a href=\"#\" class=\"message-img\"><img class=\"avatar\" src=\"img/chat-avatar.jpg\" alt=\"\"></a>
                              <div class=\"message-body msg-in\">
                                  <span class=\"arrow\"></span>
                                  <div class=\"text\">
                                      <p class=\"attribution\"><a href=\"#\">$this->acctTaskOwner at 1:55pm, 13th April 2013</a></p>
                                      <p> $this->accttask</p>
                                  </div>
                              </div>
                          </div>
                          <!-- /comment -->
                      </div>";
      }

我的目標是每次task.js運行時,AccountView.php中的php代碼都會刷新。 有點像追加數據。 目前數據被推送到mysql表,但是我必須刷新才能看到它。 我希望它在成功時自動顯示。

什么是面板類,是一類。在響應中,您要添加響應,我想您打算使用id =“ panel-body”

如果要將響應附加到“ panel-body” Div,則可以使用此jquery語句

           if (xmlhttp.readyState==4) {
            $('#panel-body').append(xmlhttp.responseText);

        }  

試試吧

window.location.reload();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM