Javascript Ajax未捕获语法错误,无法识别的表达式:

Javascript Ajax未捕获语法错误,无法识别的表达式:,javascript,php,jquery,mysql,ajax,Javascript,Php,Jquery,Mysql,Ajax,我不知道为什么控制台会返回这个未捕获的语法。。。 请帮帮我 $(document).ready(function() { $("#idval").change(function() { var id = $(this).val(); $.ajax({ url: 'verif.php', type: 'GET', data: 'user=' + id, success: function(server_response) {

我不知道为什么控制台会返回这个未捕获的语法。。。 请帮帮我

$(document).ready(function() {
  $("#idval").change(function() {

    var id = $(this).val();

    $.ajax({
      url: 'verif.php',
      type: 'GET',
      data: 'user=' + id,

      success: function(server_response) {
        var session = $(server_response).html();

        if (id == session) {
          console.log($("#" + d));
        } else {
          console.log("You shall not pass!");
        }

      },
      error: function(server_response, statut, error) {
        console.log("Can't be linked !");
      }
    });
  });
});
当用户输入
id
时,服务器会检查
id
是否在数据库中。如果是,服务器在控制台中返回
id
。如果不是,服务器应该返回“string”,但它返回未捕获的

您没有在代码中声明任何“d”,但您可以在
控制台中使用它。log

console.log($("#"+d));
但它应该是:

console.log($("#"+id));
您错过了
i

您没有在代码中声明任何“d”,但您在
控制台中使用了它。log

console.log($("#"+d));
但它应该是:

console.log($("#"+id));
您错过了
i

这一行:

var session = $(server_response).html();
没有道理。如果服务器成功回显ID,只需直接使用
server\u response

  success: function(server_response) {
    if (id == server_response) { // <== Here
      console.log($("#" + id));  // <== Also fixed apparent typo on this line,
                                 //     but that's not the reason for the
                                 //     error you're getting
    } else {
      console.log("You shall not pass!");
    }
  },
如果
如果(id==server\u response)
不起作用,这告诉我们
id
server\u response
不完全匹配。PHP脚本出现这种情况的一个常见原因是,您无意中在输出响应的代码之前或之后包含空格,通常是换行符,通常是在结尾

我们可以通过
server\u response.trim()
在现代浏览器上删除这些内容,或者使用jQuery的
$来支持旧浏览器。trim
通过
$。trim(server\u response)

成功:功能(服务器响应){
如果(id=$.trim(服务器响应)){/此行:

var session = $(server_response).html();
没有意义。如果服务器成功回显ID,只需直接使用
server\u response

  success: function(server_response) {
    if (id == server_response) { // <== Here
      console.log($("#" + id));  // <== Also fixed apparent typo on this line,
                                 //     but that's not the reason for the
                                 //     error you're getting
    } else {
      console.log("You shall not pass!");
    }
  },
If
If(id==server\u响应)
不起作用,这告诉我们,
id
server\u响应
不完全匹配。PHP脚本出现这种情况的一个常见原因是,您无意中在输出响应的代码之前或之后添加了空格,通常是换行符,通常是在结尾

我们可以通过
server\u response.trim()
在现代浏览器上删除这些内容,或者使用jQuery的
$来支持旧浏览器。trim
通过
$。trim(server\u response)

成功:功能(服务器响应){

如果(id=$.trim(server\u response)){/我不知道您为什么这样做
var session=$(server\u response.html();

您只需使用“服务器响应”。无需使用
$
符号

另外,请将
console.log($(“#“+d));
的语法更正为
console.log($(“#“+id));
因为我看不到您在任何地方定义了
d


希望这能对您有所帮助。

我不知道您为什么这样做
var session=$(服务器响应).html();

您只需使用“服务器响应”。无需使用
$
符号

另外,请将
console.log($(“#“+d));
的语法更正为
console.log($(“#“+id));
因为我看不到您在任何地方定义了
d


希望这能对你有所帮助。

var session=$(server\u response.html();
?(顺便说一句,这几乎肯定是个问题。)如果你只需要文本,直接使用
server\u response
就行了。
var session=$(server\u response.html();
?(顺便说一句,这几乎肯定是问题所在。)如果您只需要文本,只需直接使用
server\u response
。这是真的,与报告的症状不匹配,可能是问题中的输入错误或插入诊断实际问题的行。这是真的,与报告的症状不匹配,可能是问题中的输入错误或插入诊断实际问题的行问题