簡體   English   中英

為什么我的表單不使用Ajax提交

[英]why is my form not submiting using ajax

有點自私的問題,但是我通常在用ajax掙扎,所以我需要一些幫助。 因此,基本上,我試圖使用“ onblur”功能更新和sql數據庫。 這是我的代碼:

index.php上的代碼

   function saveStatus(){
var status =document.getElementById("statusForm").value;
$.ajax({
                url: 'saveStatus.php',
                type: 'post',
                data: 'feed_id=' + status,
                success: function(result){
                }
              }    
    <form id="statusUpdate" action = "whosout.php" method="post"> 
        <input type="text" id="statusForm" onblur="saveStatus()" 
        placeholder="<?php if($status!=null){ echo '&lsquo;'.$status.'&rsquo;';}
        else { echo 'Enter your status here.';}?>"> 
        </form>

和saveStatus.php上的代碼

    <?
     require 'core.php';
     require 'connect.php';

      $status = $_POST['feed_id'];
      $idPerson = $_SESSION['user_id'];
      $query = "UPDATE person SET status = '".mysql_real_escape_string($status)."' 
     WHERE idPerson = '$idPerson'"; 
    $query_run = mysql_query($query);
     ?>

當我單擊輸入框時,此sql數據庫不會更新。 任何幫助將是巨大的!

回答:

  1. 您必須設計腳本和html輸出
  2. 你忘了); 您必須關閉$.ajax塊。
  3. 您會錯過}關閉函數saveStatus()

碼:

<script>
function saveStatus(){
    var status =document.getElementById("statusForm").value;
    $.ajax({
        url: 'saveStatus.php',
        type: 'post',
        data: 'feed_id=' + status,
        success: function(result){

        }
    }); // <-- Also, you forget `);` here 
} // <-- Also, you foget closing `}` here
</script>

<form id="statusUpdate" action = "whosout.php" method="post"> 
<input type="text" id="statusForm" onblur="saveStatus()" 
placeholder="<?php if($status!=null){ echo '&lsquo;'.$status.'&rsquo;';}
else { echo 'Enter your status here.';}?>"> 
</form>

不是錯誤,但是建議:

另外,請注意:您使用了jQuery ajax函數,因此在其他情況下也使用了jQuery(而是使用了純JavaScript)。

您通過這種方式獲得價值:

var status = document.getElementById("statusForm").value;

改用jQuery語法:

var status = $("#statusForm").val();

附加信息

因為,@ Utkanos在對此答案的評論中注意到:

...如果您查看錯誤控制台,所有這些信息將顯而易見。

您必須使用某些調試工具,例如FireBug或DevTools(Chrome,也可以在Chrome中使用CTRL + SHIFT + J)。 不必要。 你必須做。

暫無
暫無

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

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