В настоящее время я практикую создание Ajax-вызовов с использованием jQuery. Пользователь входит в страну, нажимает кнопку «Поиск», а вызов AJAX выполняется в API. Затем пользователь видит случайные факты, отображаемые в стране, которую они искали. Моя проблема заключается в том, что я хочу разрешить пользователю сбросить форму, и факты автоматически исчезнут. Я встал до этого момента, но когда я вхожу во вторую страну, факты больше не хотят появляться. Следует также упомянуть, что я использую css.animate для анимации нескольких элементов на странице. Интересно, может ли это быть бесполезным. Может кто-нибудь помочь мне здесь? Я бы очень хотел поставить последние штрихи на этот простой сайт.Сбросить текст, используя jQuery, с вызовом AJAX, присутствующим
Вот мой HTML:
<h1 class = "animated infinte bounce"> World Facts </h1>
<div class = "info">
<p> Enter in a country to get some information about it! </p>
<form class = "zipform">
<input type ="text" class = "pure-input-rounded">
<button type = "submit" class = "pure_button"> Search </button>
<input type="reset" value="Reset">
</form>
<div class = "world_facts">
<p id = "region"> </p>
<p id = "capital"> </p>
<p id = "people"> </p>
<p id = "nat_name"> </p>
<p id = "domain"> </p>
</div>
</div>
И мой JS/JQuery:
`$('.pure_button').click(function(e) {
e.preventDefault()
console.log("click noticed")
$.ajax({
url: //API URL HERE,
type: "GET",
success: function(data) {
var country = $('.pure-input-rounded').val();
console.log("This works too")
debugger
console.log(data)
var capital = data[0].capital
var people = data[0].demonym
var region = data[0].region
var nat_name = data[0].nativeName
var domain = data[0].topLevelDomain
$('.world_facts').addClass("animated fadeInDown")
$('#region').text(country + " is located in " + region + ".")
$('#capital').text("Its capital is " + capital + ".")
$('#people').text("People from " + country + " are called " + people + ".")
$('#nat_name').text(people + " people call their country " + nat_name + ".")
$('#domain').text("Websites registered in " + country + " have the top level domain name of " + domain + ".")
}
});
});
$(":reset").click(function(e) {
e.preventDefault()
$(".zipform")[0].reset()
console.log("Form reset")
$(".world_facts").text("")
});`
спасибо, я буду использовать .empty() впредь. –
Без проблем! Вы можете узнать больше о .empty() против текста ("") здесь: http://stackoverflow.com/questions/15810728/jquery-empty-vs-text – uglycode