Get updated value from input

Get updated value from input
0

#1

Hello, I am trying to get the value of an input using jQuery’s .val(). But that doesn’t seem to get updated as I always get the first typed value and no matter what value I type again, I still get the results of the first value when I click “Search”. Here is the code Wikepedia Viewer


#2

Did you get this figured out? It seems to be working when I try it.


#3

No yet! I still need to refresh the page every time I want to do a new search. I don’t want that. I want to get results just clicking the “Search” button


#4

Ok, I figured out the problem. You’re getting the expected input (which is all I checked because laziness), but you’re not clearing out the markup you created from your last search. You need to do something like

$("#resultsTitle").html('') // empty out the HTML in #resultsTitle

each time you want to update the search.


#5

Where should I place it? because I’ve tried it in every pocible place, but no luck


#6

You should clear out the last search each time the search button is clicked, and it should be done before you send the request for the next search. I would suggest a couple of changes:

  1. Change the search parameters a bit. Right now you’re getting the results in arrays because the Wikimedia API is really hard to understand and use. I changed your URL to https://en.wikipedia.org/w/api.php?action=query&list=search&srsearch=" + key + "&format=json&callback=?" and it gave me an array of objects instead of just some arrays.

  2. With a more cogent form for your data, you can change how you write out each result. Instead of having 3 different places for your data, #resultsTitle, #resultsInto, and #resultsLink, you can have just one container, like #results. That way it’s easy to clear out old data - $('#results').html(''). Each result can be easily written out, too.


#7

Thank you! I will try that out. Yes, the Wikimedia API is really complicated. It took me days to figure out what does out and I am still struggling with it. Hopefully I will get the hang out of it sooner