从#DIV中的文件启动时不加载PHP文件

时间:2014-11-13 22:28:24

标签: javascript php jquery html mysql

这让我发疯了。

我在这个等式中有三个页面:nightmare.php,semi.php和update.php。

代码片段

nightmare.php

<a class="pull-right">
  <select class="navbar-inverse" onchange="showPage(this.value)">
  <option value="" disabled selected>Select Business Unit</option>
  <option value="/Nightmare/imes.php">IMES</option>
  <option value="/Nightmare/semi.php">SEMI</option>
</select></a>

<div id="txtHint"><b></b>

showPage() function

function showPage(str) {
  console.log(str);
  if (str !==".PM") {
    if (str=="") {
      document.getElementById("txtHint").innerHTML="";
      return;
    } 
  }
 if (str!=="/metrics.php") {

$("#txtHint").load(str, function () {

});
}}

用户首先加载nightmare.php,它包含一个带有下拉列表的标题栏(如上所示)。当他们选择SEMI时,half.php被调用到#txtHint div(也在上面显示)

semi.php

semi.php主要由填充了PHP和SQL的HTML表组成。用户可以更新字段。有一个提交按钮。当用户按下此提交按钮时,应将这些更改发送到服务器,并使用更新的信息刷新用户的视图。

重要的是这一行:

<form method="POST" action="update.php">

问题

如果将 semi.php 加载到地址栏中,则会显示该表格并输入注释并点击&#34;更新&#34;按钮。 Update.php启动并echo输出正确的SQL代码。

如果我加载 nightmare.php ,则从下拉列表中选择half并将half.php填充到nightmare.php上的DIV中,然后单击更新按钮,它会加载update.php 但update.php为空白,并且没有代码执行到服务器。我已经查看过我已经写过的其他项目,我已经完成了同样的过程,我无法在代码中看到任何可辨别的差异,这些信息可以让我理解为什么这样做不会工作。我很困惑!

如果您需要查看任何其他代码片段以帮助我理解这一点,请告诉我。

2014年11月14日更新

这是semi.php,为简洁起见做了一些改动:

<?php session_start(); ?>
<!doctype html>
<html>     
  <head>        
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <link rel="stylesheet" href="/bootstrapstyle.css">    
    <link rel="stylesheet" href="/toastr.css">    
    <script type="text/javascript" src="/toastr.js"></script>             
    <script type="text/javascript" src="https://netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>         
    <script type="text/javascript" src="/tablesorter/jquery.tablesorter.js"></script>
    <style type="text/css">      body {         padding-top: 50px;         padding-bottom: 20px;       }     
    </style>  
    <style>
      .filter-table .quick { margin-left: 0.5em; font-size: 0.8em; text-decoration: none; }
      .fitler-table .quick:hover { text-decoration: underline; }
      td.alt { background-color: #ffc; background-color: rgba(255, 255, 0, 0.2); }
    </style>                                      
  </head>     
  <body>

<script>
$(document).ready(function() 
    { 
        $("#box-table-a")
        .tablesorter({textExtraction: 'complex'}); 
    } 
);  
</script>

<?php 
include('./nightmaredb.php');
$sqlQuery = "SELECT * FROM report";
$result     = mysqli_query($con, $sqlQuery);
?>          

<div class="jumbotron">
<div class="container">
  <h1 class="pull-left">Nightmare</h1>  
</div>

<div id="form-messages">           
<div class="container2">
<div class="row">
  <div class="col-xs-6 col-sm-4 col-lg-12">       
    <form id="updateNightmare" method="POST" action="update.php">
      <div class="container pull-left">
        <h2 class="pull-left">
          <input class="button" class="btn btn-default btn-lg" name="update"<?= $lineID ?>" type="submit" id="update" value="UPDATE">            
        </h2>        
      </div>
</div>
</div>
<div id="tableRefresh">
<table id="box-table-a" class="tablesorter">  
    <thead>
<th>SOLI</th>
<th>Branch</th>
<th>*... a few others...*</th>
</tr></thead>

<?php
while ($row = mysqli_fetch_array($result)) {

    $lineID             = $row['lineID'];   
    $soli               = $row['soli'];
    $branch             = $row['branch'];
    $warehouse          = $row['warehouse'];
    $acctNumber         = $row['acctNumber'];
    $customer           = $row['customer'];
    $resolutionComments = $row['resolutionComments'];

?>
<tr>
<td><?= $lineID ?><input name="lineID[]" value="<?= $lineID ?>"></td>
<td><?= $soli ?><input name="soli" value="<?= $soli ?>"></td>
<td><?= $branch ?><input name="branch" value="<?= $branch ?>"></td>
<td> *... a few others ...* </td>

<?php
}
?>
</table>
</form>
</div>
</div>
</div>
</div>
</div>

      <hr>
      <footer>
      </footer>
    <!-- /CONTAINER -->

  <script src="update.js"></script>  
  <script src="/filter/jquery.filtertable.min.js"></script>
  <script>
    $(document).ready(function() {
        $('table').filterTable();        
    });
  </script>

  </body>

</html>  

0 个答案:

没有答案