【问题标题】:jQuery ajax not posting values to php scriptjQuery ajax 没有将值发布到 php 脚本
【发布时间】:2017-07-15 21:58:19
【问题描述】:

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

这是我的代码。

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()

标签: javascript php jquery ajax post


【解决方案1】:

$('#note').val()代替$('#note').attr('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">

【讨论】:

  • 感谢 anant 的回复,我已将其更改为使用 .val(),但是仍然没有设置消息...可能是脚本问题?
  • 抱歉,我的数据库中的表列名输入错误是我的错误!很抱歉给您带来了困扰(但感谢 Val() 提示!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-04-27
  • 1970-01-01
  • 2011-09-24
  • 2012-07-03
  • 1970-01-01
  • 1970-01-01
  • 2017-04-23
相关资源
最近更新 更多