2016-05-24 2 views
0

Я пытаюсь изучить javascript, создав простой сайт для проверки цены с использованием API продуктов Best Buy.Как вручную проверить JavaScript?

Как мне запустить javascript? Моя форма принимает идентификационный номер продукта (SKU) и отправляет его для подтверждения SKU() для отправки. Функция processData (data) выполняет поиск продукта с использованием SKU.

Ничего не происходит, когда я тестирую сайт, и любая помощь будет отличной; благодаря!

<!DOCTYPE html> 
 
<html> 
 

 
<head> 
 
    <title>Learn JavaScript</title> 
 
</head> 
 

 
<body> 
 
    <form id="bestBuyForm" name="bestBuyForm" onsubmit="validateSKU()"> 
 
    <input id="SKU" name="SKU" required="" type="text"> 
 
    <label for="SKU">SKU</label> 
 

 
    <input id="email" name="email" type="email"> 
 
    <label for="email">Email</label> 
 

 
    <input class="button" id="submit" name="submit" type="submit"> 
 
    </form> 
 
    <script> 
 
    function validateSKU() { 
 
     var SKU = document.forms["bestBuyForm"]["SKU"].value; 
 
     var bby = require('bestbuy')('process.env.BBY_API_KEY'); 
 
     var search = bby.products('sku=' + SKU); 
 
     search.then(processData); 
 
    } 
 

 
    function processData(data) { 
 
     if (!data.total) { 
 
     console.log('No products found'); 
 
     } else { 
 
     var product = data.products[0]; 
 
     console.log('Name:', product.name); 
 
     console.log('Price:', product.salePrice); 
 
     } 
 
    } 
 
    </script> 
 
</body> 
 

 
</html>

+0

Видите ли вы какие-либо ошибки в консоли? – ray

+0

это не лучший способ узнать javascript, его как «обучение вождению на треке F1» –

+0

@ray Ошибок не обнаружено. Когда я нажимаю кнопку «Отправить», единственное, что происходит, это то, что страница обновляется. Если я поместил javascript в файл test.js и сделаю «var SKU = 1234567» и наберите «node test.js» в консоли, сценарий будет работать по назначению. – user5473154

ответ

0

Использование web console, чтобы увидеть, что же произошло, и читать о console API.

Попробуйте связать validateSKU с помощью метода addEventListener HTML-элемента. Также вы должны запретить поведение формы по умолчанию, которое вызывает перегрузку страницы при отправке. Звоните event.preventDefault().

Working example код:

<html> 
    <form id="someForm"> 
     ... 
     <button type="submit">Submit</submit> 
    </form> 
    <script> 
    function validateSKU(event) { 
     console.log('IT works'); 
     event.preventDefault(); 
     // ...here your code 
    } 

    var form = document.getElementById('someForm'); 

    form.addEventListener('submit', validateSKU, false); 
    </script> 
</html> 
Смежные вопросы