将PHP变量传递回jQuery $ .ajax函数

izo*_*ate 4 php variables ajax jquery post

1. HTML

我有一个输入请求用户输入他们的PIN码:

<input type="text" name="pin" maxlength="4" id="pin" />

2. javaScript

当用户键入4个字符时,jQuery函数会触发ajax调用以处理PHP文件中的PIN并返回相应的站点名称:

$("input#pin").keyup(function() {
    var PIN = $("this").val();

    if (PIN.length == 4) {

        var dataString = "PIN=" + PIN;

        $.ajax({
            type: "POST",
            url: "pins.php",
            dataType: "json",
            data: dataString,
            cache: false,
            success: function(site)
                {
                    console.log("site name is:" + site);
                }
        });
    }
});    
Run Code Online (Sandbox Code Playgroud)

3. PHP

pins.php 包含以下代码:

<?php
$pin = $_POST["PIN"];

if ($pin == "faf9") {
    $site = "pgv";
}

echo $site;
?>
Run Code Online (Sandbox Code Playgroud)

问题

我似乎无法获得$site回到ajax调用的成功函数的价值.null如果引脚不相等faf9,则控制台日志报告为值,如果输入正确的引脚,则没有日志.

我似乎无法弄清楚我哪里出错了?

Joh*_*ard 8

将dataType更改为:

dataType: 'HTML',
Run Code Online (Sandbox Code Playgroud)

就这些 :)

  • 或者将dataString更改为`dataString:{PIN:PIN}` (2认同)