Делать функцию по нажатию кнопки

0

Мне сложно понять, как это решить. У меня есть поле ввода и кнопка отправки. Первое, что я хочу сделать, это изменить значение переменной на значение поля ввода при нажатии кнопки отправки.

Во-вторых, я хочу запустить функцию при нажатии кнопки отправки. case: Когда нажата кнопка отправки, я хочу получить json файл из википедии на основе значения поля ввода.

    <div class="container">
    <div class="row">
        <div class="span8"><p>Please enter your searchterm:</p>
        <input id="input" type="text"  value="Denmark"><br>
            <input type="button" id="submit" value="Search" />
        </div>
        <div class="span4"><div id="result"></div></div>
    </div>
 </div>


<script>
var searchTerm="";
var url="http://en.wikipedia.org/w/api.php?action=parse&format=json&page=" + searchTerm+"&redirects&prop=text&callback=?";

$('#submit').click(function (){
searchTerm='denmark';
});


$.getJSON(url,function fetchWiki(data){
  wikiHTML = data.parse.text["*"];
  $wikiDOM = $("<document>"+wikiHTML+"</document>");
  $("#result").append($wikiDOM.find('.infobox').html());
});

Я не могу понять, как изменить значение и запустить функцию после этого.

Пожалуйста, не стесняйтесь, я относительно новичок в JavaScript.

Теги:

1 ответ

1
Лучший ответ

Вам необходимо предотвратить действие по умолчанию события click:

$('#submit').click(function (e){ //pass the event into the function
 e.preventDefault(); //prevent the submit button from actually submitting

 //update your variables
 searchTerm = $("#input").val();
 url="http://en.wikipedia.org/w/api.php?action=parse&format=json&page=" + searchTerm+"&redirects&prop=text&callback=?";


 $.getJSON(url,function fetchWiki(data){
   wikiHTML = data.parse.text["*"];
   $wikiDOM = $("<document>"+wikiHTML+"</document>");
   $("#result").append($wikiDOM.find('.infobox').html());
  });

});

Кроме того, обратите внимание, что код, который делает поиск должен пойти внутри функции мыши, поскольку переменные должны быть обновлены после нажмите кнопку "Отправить".

  • 0
    Вам также нужно изменить URL после получения searchTerm из ввода. В противном случае это довольно бесполезно.
  • 0
    К сожалению, обновлено ..
Показать ещё 4 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню