Javascript 语法错误“;意外标记“}”;快把我逼疯了

Javascript 语法错误“;意外标记“}”;快把我逼疯了,javascript,ajax,Javascript,Ajax,意外标记} 我已经经历过一千次了,但我看不出来。我已经数过大括号和圆括号,但我遗漏了一些东西 function gotoPhotoUploader() { var db = document.getElementById('dbname').value; if (db !== 'data') { document.location.href="photoUploader.php"; } else { $.ajax({ type: 'POST', data: $('#mysqlIndex'),

意外标记}

我已经经历过一千次了,但我看不出来。我已经数过大括号和圆括号,但我遗漏了一些东西

function gotoPhotoUploader() {
var db = document.getElementById('dbname').value;
if (db !== 'data') {
  document.location.href="photoUploader.php";
} else {
$.ajax({
type: 'POST',
data: $('#mysqlIndex'),
url: 'getPageNo.php',
  success: function(data) {
  console_log(data);
  document.location.href="photoUploader.php?&page=" + data;
  }
}
})};

我错过了什么?谢谢。

请注意括号的顺序。也就是说,在关闭
$的参数列表之前,您正在关闭
else
块。ajax

添加括号时,请将括号适当隔开,括号内的所有内容都应再缩进一个选项卡。这样做将使查找问题和阅读代码逻辑变得非常容易

我不确定我删除和添加了哪些括号和花括号,因为我做了一些更改。我一开始只是对代码进行了适当的格式化,其余的就放在了需要添加适当的右括号的地方

格式化许多已被错误格式化的代码的一种简单方法是使用web服务。我建议你不要依赖这项服务,而是练习好的编程技巧。但是,在某些情况下,如果查看旧代码、压缩代码或其他人的格式不好的代码,您将需要此功能

function gotoPhotoUploader() {
    var db = document.getElementById('dbname').value;
    if (db !== 'data') {
        document.location.href="photoUploader.php";
    } else {
        $.ajax({
            type: 'POST',
            data: $('#mysqlIndex'),
            url: 'getPageNo.php',
            success: function(data) {
                console_log(data);
                document.location.href="photoUploader.php?&page=" + data;
            }
        });
    }
}

是的,正如Niet指出的

...}else{
    $.ajax({
        type: 'POST',
        data: $('#mysqlIndex'),
        url: 'getPageNo.php',
        success: function (data) {
            console_log(data);
            document.location.href = "photoUploader.php?&page=" + data;
        }
    }
  })
应该是

...}else{
     $.ajax({
        type: 'POST',
        data: $('#mysqlIndex'),
        url: 'getPageNo.php',
        success: function (data) {
            console_log(data);
            document.location.href = "photoUploader.php?&page=" + data;
        }
    });
  }

正确的缩进将是一个很好的开始。我将为您缩进,然后应该清楚问题是什么,所以@dystroy是正确的,这里应该是答案。您的$.ajax call中有一个额外的}。回答问题中的问题是不合适的。@dystroy-这肯定很快就走下坡路了,没有人再看评论或贴出的答案了吗?谢谢大卫。正如我在一次编辑中所解释的,它在这个页面上的呈现与在我的编辑器中通过复制/粘贴呈现的不一样。尽管如此,我必须承认你的压痕比我的好。我在linux方面的编辑(Kate)有自己的想法,我根本没有花时间调整它的设置。谢谢大家。