尝试使用ajax发送数据时未定义引用错误:

时间:2015-03-24 18:45:17

标签: javascript ajax

所以我试图将一个数组作为字符串发送到.php文件,将其写入数据库,我收到此错误ReferenceError: strings is not defined

真的不知道发生了什么,第一次这样做。我从教程中复制代码并开始更改它,它运行良好,直到我在名称后添加字符串。这些词是保留的,我应该用什么呢?它是如何工作的?谢谢你的帮助。



var string = [1, 2, 3];

$('#write').click(function() {
  writeTable();
})

// handles the click event, sends the query
function writeTable() {
  $.ajax({
    url: 'write.php',
    type: 'get', //data type post/get
    data: {
      name: $('input#input').val(),
      strings: JSON.stringify(strings)
    },
    complete: function(response) {
      $('.output').html(response.responseText);
    },
    error: function() {
      $('.output').html('Bummer: there was an error!');
    }
  });
  return false;
}

.button {
  border: 1px solid black;
  width: 100px;
  display: inline-block;
}
.output {
  height: 400px;
  width: 400px;
  border: 1px solid black;
  overflow: auto;
}

<!doctype HTML>

<head>

  <meta charset="UTF-8">
  <link type="text/css" rel="stylesheet" href="index.css">

</head>

<body>

  <br>
  <form>File Name:
    <input type="text" id="input" name="input" placeholder="Type something">
  </form>
  <br>
  <div class="button" id="write">Write</div>
  <div class="button" id="search">Search</div>
  <br>
  <br>
  <div class="output"></div>

  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
  <script src="index.js"></script>

</body>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

您声明:var string = [1, 2, 3];

并放置strings: JSON.stringify(strings)

您只有s缺失或要删除的一个:

要解决此问题,您可以更改:

strings: JSON.stringify(strings)

To(第二个“字符串”,不带 s ):

strings: JSON.stringify(string)