繁体   English   中英

Jquery ajax Post 不工作?

[英]Jquery ajax Post is not working?

我使用了没有表格的ajax帖子。 当我单击提交按钮时,它应该获取其他字段的值。 未发送发布请求,也未显示输出。 它正在返回此错误Unexpected identifier

这是输入字段

<input type="text" name="name" id="name" class="center-block Ename" placeholder="Enter you name">
            <textarea class="center-block" name="message" id="message" rows="1" placeholder="Enter your message"></textarea>
            <input class="center-block sendBtn" type="submit" id="submit" name="submit" value="Submit">

这是ajax请求。

$(document).ready(function(){
        var interval = setInterval($('#submit').click(function(){
            var values = {
                'name': document.getElementById('name').value,
                'message': document.getElementById('message').value
            };
            $.ajax({
                type: "POST",
                url: "chat.php",
                data: values,
                success: function(data){
                    $("#chat").html(data);
                }
            });

        }),1000);

    });

它正在向这个 php 页面发送请求

<?php
include 'db.php';


//Here post data is being assigned to variables
        $name = $_POST['name'];
        $message = $_POST['message'];
        $queryInsert = "INSERT INTO chat(`name`, `message`) VALUES('$name', '$message')";
        $queryInsertRun = mysqli_query($con, $queryInsert);
        if(!$queryInsertRun){
            echo mysqli_error($con);
        }



//Here is the output which should be shown

$query = "SELECT * FROM `chat` ORDER BY `name` AND `message` DESC ";
$queryRun = mysqli_query($con, $query);
while($row = mysqli_fetch_assoc($queryRun)){
$name = $row['name'];
$message = $row['message'];
?>
    <span class="name" style="font-weight: bold"><?php echo  $name?>:</span>
    <span class="message"><?php echo  $message.'<br>'?></span>
    <hr>
<?php
}
?>

我想知道为什么这不起作用。

听起来您的 JSON 数据无效。

var data = JSON.stringify(values);
var request = $.ajax({
  url: "script.php",
  method: "POST",
  data: data,
  dataType: "html" // read about dataType
});

试试这个代码

function ajaxcall()
{
console.log('i am called');
        var values = {
            'name': document.getElementById('name').value,
            'message': document.getElementById('message').value
        };

             $.ajax({
                type: "POST",
                url: "chat.php",
                data: values,
                success: function(data){
                    $("#chat").html(data);
                }
            });

}

$(document).ready(function(){
var id = setInterval(function() {
   ajaxcall();
}, 1000);
    });

http://jsfiddle.net/cod7ceho/116/

如果您想在点击提交按钮时显示数据,请使用简单的点击功能。 使用 setInterval 无法帮助您单击 submit 。 JS

$(document).ready(function(){
        $('#submit').click(function(){
            var values = {
                'name': document.getElementById('name').value,
                'message': document.getElementById('message').value
            };
            $.ajax({
                type: "POST",
                url: "chat.php",
                data: values,
                success: function(data){
                    $("#chat").html(data);
                }
            });

        });
      });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM