Как обновить URL вызова JSON по клику - PullRequest
0 голосов
/ 06 октября 2019

Мне нужен вызов getJSON для обновления URL-адреса выбранного имени, выбранного по нажатию кнопки, и извлечения данных, связанных с выбором.

В настоящее время он обновляет имя, но не получает новые данные с нового URL-адреса. .

<a href="info.php?name=Name1" onclick="name1()">Name1</a>
<a href="info.php?name=Name2" onclick="name2()">Name2</a>
<a href="info.php?name=Name3" onclick="name3()">Name3</a>
let name_url = "name.com";

function name1() {
    name_url = "1.name.com";
};

function name2() {
    name_url = "2.name.com";
};

function name3() {
    name_url = "3.name.com";
};

$.getJSON('https://'+name_url+'/name-info?name-id=1&name=' + theName, function(data) {

        var loading = $('.loading');   
        var nameData = $('#nameResults'); 
        var avgBlockTime = (data['avg-block-time']/1000)

    $.ajaxSetup({
        async: true
    });

    $.ajaxSetup({
        async: false
    });

Я ожидаю, что различные данные будут заполнены обновленной веб-страницей.

1 Ответ

2 голосов
/ 06 октября 2019

Самый простой подход - использовать прослушиватель событий jQuery и получать щелчок по элементу href при нажатии на него.

Вы уже установили параметры запроса в атрибуте href каждой ссылки, чтобы весь URL могполучить очень просто

HTML

<a class="ajax-link" href="info.php?name=Name1">Name1</a>
<a class="ajax-link" href="info.php?name=Name2">Name2</a>
<a class="ajax-link" href="info.php?name=Name3">Name3</a>

JS

$(function(){    
    $('.ajax-link').click(function(event){
       // prevent browser opening in new page
       event.preventDefault();
       // `this` is `<a>` instance and it has an `href` property that is full url needed
       $.getJSON( this.href, function(data) {
          // do stuff with response data
          ...
       });  
    });    
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...