Не удается получить .getJSON для запуска по клику - PullRequest
0 голосов
/ 07 ноября 2018

Я пытаюсь заставить функцию "restpp" запускать onclick, но, похоже, она не работает. Я не уверен, в чем проблема. Есть предложения?

Вот мой код:

<code><html>
<head>
  <title>Restaurant App</title>
</head>
<body>

<input id="info" type="button" onclick="restapp()" value="Create Table From JSON">

<hr>
<pre id="demo">
результат = []; город = 'чикаго'; opURL = 'http://opentable.herokuapp.com/api/restaurants?city=' + город; function restapp () { $ .getJSON (opURL, function (data) { // данные - это строка JSON для (i = 0; i "); } document.getElementById ("demo"). innerHTML = JSON.stringify (result, null, 2); }); }

Ответы [ 2 ]

0 голосов
/ 07 ноября 2018

Кажется, что есть некоторые неуместные скобки функций. Я сделал вставку innerHTML как обработчик-преемник:

function restapp() {
    $.getJSON(opURL, function(data) {
        //data is the JSON string
        for (i=0; i<data.restaurants.length; i++) {
            result.push("Name: " + 
            data.restaurants[i].name);
                result.push("Address: " + 
            data.restaurants[i].address);
                result.push("Price: " + 
            data.restaurants[i].price);
                result.push("<br>");
        }
    }).document.getElementById("demo").innerHTML = JSON.stringify(result, null, 2);    
}
0 голосов
/ 07 ноября 2018

Где твой JQuery?

$. GetJSON требует JQuery. Проверьте консоль браузера на наличие ошибок.

<script
  src="https://code.jquery.com/jquery-3.3.1.min.js"
  integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
  crossorigin="anonymous"></script>

Вставьте это в тег head.

Вы можете использовать селектор JQuery для выбора поля ввода и использовать метод щелчка для события щелчка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...