Second Opinion
Folosind serviciul second opinion ne puteți trimite RMN-uri, CT -uri, angiografii, fișiere .pdf, documente medicale. Astfel vă vom putea da o opinie neurochirurgicală, fără ca aceasta să poată înlocui un consult de specialitate. Răspunsurile vor fi date prin e-mail în cel mai scurt timp posibil (de obicei în mai putin de 24 de ore, dar nu mai mult de 48 de ore). Second opinion – Neurohope este un serviciu gratuit. www.neurohope.ro |
Cautare in json dupa o valoare text din <input>
Last Updated: Dec 16 2016 15:11, Started by
colombo2003
, Dec 16 2016 02:06
·
0
#1
Posted 16 December 2016 - 02:06
Intr-o pagina html, am un camp dupa care as vrea sa pot cauta si afisa date intr-un json (in caz ca exista date care se potrivesc).
<html> <head> <link rel="stylesheet" type="text/css" href="css/index.css"/> <link rel="shortcut icon" type="image/x-icon" href="img/favicon.ico"> <script src="https://code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script> <script src="js/search.js"></script> </head> <body> <div id="search"> <input type="search" placeholder="Search"> <input type="button" id="search" name="search" value="Search1" onclick="search();"> </div> <script> var test = { "restos": [{ "Resto1": [{ "name": "nume1", "address": "strada 1", "tel": "0211", "email": "email1@email", "web": "www1", "pic": "img/rest.jpg" }], "Resto2": [{ "name": "nume2", "address": "bd2", "tel": "0722", "email": "email2@", "web": "www2", "pic": "img/rest.jpg" }] }] } $( function() { var items = []; function test1(json) { $.each(json.restos, function(index, orders) { $.each(this, function() { $.each(this, function() { items.push('<div class="nume">' + this.name + '</div>' + "\n"); }); }); }); $('<div>', { "class": 'resto', html: items.join('') }).appendTo("body"); }; test1(test); }); $(function () { var items = []; function test1(json) { $.each(json.restos, function (index, orders) { $.each(this, function () { $.each(this, function () { items.push('<div class="nume">' + this.name + '</div>' + "\n"); }); }); }); $('<div>', { "class": 'resto', html: items.join('') }).appendTo("body"); }; test1(test); }); </script> </body> </html> L-a actiunea tag-ului <input> m-am gandit sa pun functia onclick, iar functia propriu-zisa sa fie intr-un script js, declarant in <head>. Problema e ca nu stiu cum as putea sa fac o astfel de filtrare si afisare. Orice idee e binevenita (problema de fapt e la condita de genul if (this.nume === si aici nu stiu cum sa pun valoarea din input). Multumesc. PS. Credite si multumiri lui maxtron69 |
#2
Posted 16 December 2016 - 09:26
x = document.getElementById('id_input').value ar fi o metoda. dar probabil ca exista si metode mai bune.
|
#3
Posted 16 December 2016 - 11:06
poti sa folosesti metode native din js cum ar fi find dupa ce folosesti JSON.parse;
var foo = JSON.parse(test); var result = foo.restos.filter((item) => { return item.name === userInput }); Dupa poti sa faci ce vrei cu result, e usor sa loopezi prin el cu map si sa intorci elemente de HTML intr-o colectie pe care o apendezi la DOM. Nu pune on click pe input, poti f bine sa-l cauti cu jQuery gen: $('.inputClass').append(someStuff). Scripturile se pun mereu la sfarsitul paginii si niciodata in head ca sa nu se opreasca incarcarea HTML-ului pana iti incarca scriptu. |
#4
Posted 16 December 2016 - 15:11
Multumesc pentru solutiile oferite.
Am ales-o pe cea a lui dexter_lab pentru ca mi s-a parut mai simpla si usor de "digerat". PS. Rezolvat. Se poate inchide! |
Anunturi
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users