javascript - jQuery ajax 没有将值发布到 php 脚本

标签 javascript php jquery ajax post

我在通过 jQuery/ajax 将值发布到我的 php 脚本时遇到问题。我四处寻找解决方案,但似乎无法弄清楚为什么我没有得到发布的值(value)。

这是我的代码。

page.html

<body>



  input message:<p><input type="text" id="note" name="note" placeholder="enter something that made you feel this way"></p><br />

  <p><button name="submitMessage">submit</button></p>
  <script src="../js/jquery-3.1.1.js"></script>

<script src="../js/welcomeScript.js"></script>
<script> $( document ).ready(function() {



$('[name=submitMessage]').on('click', function (e){
     e.preventDefault();

     $.ajax({
          type: 'POST',
          url: '../php/post-note.php',
          data: {data: $('#note').attr('val')},
          success: function(){
                alert('added your note, you will now go to main app!');
                window.location.href = "../home.php";
          }
     });

   });

});

</script>
</body>

post-note.php

session_start();
$note = $_POST['data'];

if(isset($note) && isset($_SESSION['username'])){

  $username = $_SESSION['username'];
  $sqlMessage = "UPDATE mt_tbl SET note = '$note' WHERE userName = '$username'";
  mysqli_query($conn, $sqlMessage);
  echo "note: ".$note. " added to the dB!";
}

最佳答案

代替 $('#note').attr('val') 使用 $('#note').val()

为什么?原因如下:-

console.log($('#note').attr('val'));
console.log($('#note').val());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id = "note" value = "2">

关于javascript - jQuery ajax 没有将值发布到 php 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42449312/

相关文章:

php - 使用 salesforce api 将联系人与帐户相关联

php - 在 CodeIgniter 的 2-3 个表中从数据库获取数据的正确方法

javascript - for循环可以等到其中的函数执行完毕吗?

javascript - 复制而不保留引用

javascript - 可以在与 IFrame 相同的页面中列出 html 源代码吗?

javascript - 如何在jquery mobile中启用垂直滚动

php - 强制存储库返回 CustomClass 类型而不是 Object 类型

javascript - WebGL Earth 在当前位置重启动画

javascript - 如何使用javascript添加整数和 float ?

javascript - 未捕获的语法错误 : Unexpected token ) not sure what am i doing wrong?